/*
 * Copyright [2013-2021], Alibaba Group Holding Limited
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *    http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: polarx_sql.proto

package com.mysql.cj.polarx.protobuf;

public final class PolarxSql {
  private PolarxSql() {}
  public static void registerAllExtensions(
      com.google.protobuf.ExtensionRegistryLite registry) {
  }

  public static void registerAllExtensions(
      com.google.protobuf.ExtensionRegistry registry) {
    registerAllExtensions(
        (com.google.protobuf.ExtensionRegistryLite) registry);
  }
  public interface StmtExecuteOrBuilder extends
      // @@protoc_insertion_point(interface_extends:Polarx.Sql.StmtExecute)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <code>optional string namespace = 3 [default = "sql"];</code>
     * @return Whether the namespace field is set.
     */
    boolean hasNamespace();
    /**
     * <code>optional string namespace = 3 [default = "sql"];</code>
     * @return The namespace.
     */
    java.lang.String getNamespace();
    /**
     * <code>optional string namespace = 3 [default = "sql"];</code>
     * @return The bytes for namespace.
     */
    com.google.protobuf.ByteString
        getNamespaceBytes();

    /**
     * <code>optional bytes stmt = 1;</code>
     * @return Whether the stmt field is set.
     */
    boolean hasStmt();
    /**
     * <code>optional bytes stmt = 1;</code>
     * @return The stmt.
     */
    com.google.protobuf.ByteString getStmt();

    /**
     * <code>optional bytes stmt_digest = 12;</code>
     * @return Whether the stmtDigest field is set.
     */
    boolean hasStmtDigest();
    /**
     * <code>optional bytes stmt_digest = 12;</code>
     * @return The stmtDigest.
     */
    com.google.protobuf.ByteString getStmtDigest();

    /**
     * <code>optional bytes hint = 13;</code>
     * @return Whether the hint field is set.
     */
    boolean hasHint();
    /**
     * <code>optional bytes hint = 13;</code>
     * @return The hint.
     */
    com.google.protobuf.ByteString getHint();

    /**
     * <code>optional bool chunk_result = 14 [default = false];</code>
     * @return Whether the chunkResult field is set.
     */
    boolean hasChunkResult();
    /**
     * <code>optional bool chunk_result = 14 [default = false];</code>
     * @return The chunkResult.
     */
    boolean getChunkResult();

    /**
     * <code>optional bool feed_back = 16 [default = false];</code>
     * @return Whether the feedBack field is set.
     */
    boolean hasFeedBack();
    /**
     * <code>optional bool feed_back = 16 [default = false];</code>
     * @return The feedBack.
     */
    boolean getFeedBack();

    /**
     * <code>repeated .Polarx.Datatypes.Any args = 2;</code>
     */
    java.util.List<com.mysql.cj.x.protobuf.PolarxDatatypes.Any> 
        getArgsList();
    /**
     * <code>repeated .Polarx.Datatypes.Any args = 2;</code>
     */
    com.mysql.cj.x.protobuf.PolarxDatatypes.Any getArgs(int index);
    /**
     * <code>repeated .Polarx.Datatypes.Any args = 2;</code>
     */
    int getArgsCount();
    /**
     * <code>repeated .Polarx.Datatypes.Any args = 2;</code>
     */
    java.util.List<? extends com.mysql.cj.x.protobuf.PolarxDatatypes.AnyOrBuilder> 
        getArgsOrBuilderList();
    /**
     * <code>repeated .Polarx.Datatypes.Any args = 2;</code>
     */
    com.mysql.cj.x.protobuf.PolarxDatatypes.AnyOrBuilder getArgsOrBuilder(
        int index);

    /**
     * <code>optional bool compact_metadata = 4 [default = false];</code>
     * @return Whether the compactMetadata field is set.
     */
    boolean hasCompactMetadata();
    /**
     * <code>optional bool compact_metadata = 4 [default = false];</code>
     * @return The compactMetadata.
     */
    boolean getCompactMetadata();

    /**
     * <pre>
     * For auto commit request.
     * </pre>
     *
     * <code>optional string schema_name = 5;</code>
     * @return Whether the schemaName field is set.
     */
    boolean hasSchemaName();
    /**
     * <pre>
     * For auto commit request.
     * </pre>
     *
     * <code>optional string schema_name = 5;</code>
     * @return The schemaName.
     */
    java.lang.String getSchemaName();
    /**
     * <pre>
     * For auto commit request.
     * </pre>
     *
     * <code>optional string schema_name = 5;</code>
     * @return The bytes for schemaName.
     */
    com.google.protobuf.ByteString
        getSchemaNameBytes();

    /**
     * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 6;</code>
     */
    java.util.List<com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable> 
        getSessionVariablesList();
    /**
     * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 6;</code>
     */
    com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable getSessionVariables(int index);
    /**
     * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 6;</code>
     */
    int getSessionVariablesCount();
    /**
     * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 6;</code>
     */
    java.util.List<? extends com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariableOrBuilder> 
        getSessionVariablesOrBuilderList();
    /**
     * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 6;</code>
     */
    com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariableOrBuilder getSessionVariablesOrBuilder(
        int index);

    /**
     * <code>optional string encoding = 7;</code>
     * @return Whether the encoding field is set.
     */
    boolean hasEncoding();
    /**
     * <code>optional string encoding = 7;</code>
     * @return The encoding.
     */
    java.lang.String getEncoding();
    /**
     * <code>optional string encoding = 7;</code>
     * @return The bytes for encoding.
     */
    com.google.protobuf.ByteString
        getEncodingBytes();

    /**
     * <code>optional int32 token = 8;</code>
     * @return Whether the token field is set.
     */
    boolean hasToken();
    /**
     * <code>optional int32 token = 8;</code>
     * @return The token.
     */
    int getToken();

    /**
     * <code>optional bool reset_error = 9;</code>
     * @return Whether the resetError field is set.
     */
    boolean hasResetError();
    /**
     * <code>optional bool reset_error = 9;</code>
     * @return The resetError.
     */
    boolean getResetError();

    /**
     * <code>optional uint64 snapshot_seq = 10;</code>
     * @return Whether the snapshotSeq field is set.
     */
    boolean hasSnapshotSeq();
    /**
     * <code>optional uint64 snapshot_seq = 10;</code>
     * @return The snapshotSeq.
     */
    long getSnapshotSeq();

    /**
     * <code>optional uint64 commit_seq = 11;</code>
     * @return Whether the commitSeq field is set.
     */
    boolean hasCommitSeq();
    /**
     * <code>optional uint64 commit_seq = 11;</code>
     * @return The commitSeq.
     */
    long getCommitSeq();

    /**
     * <code>optional bool use_cts_transaction = 15;</code>
     * @return Whether the useCtsTransaction field is set.
     */
    boolean hasUseCtsTransaction();
    /**
     * <code>optional bool use_cts_transaction = 15;</code>
     * @return The useCtsTransaction.
     */
    boolean getUseCtsTransaction();

    /**
     * <pre>
     * capabilities
     * </pre>
     *
     * <code>optional uint64 capabilities = 17;</code>
     * @return Whether the capabilities field is set.
     */
    boolean hasCapabilities();
    /**
     * <pre>
     * capabilities
     * </pre>
     *
     * <code>optional uint64 capabilities = 17;</code>
     * @return The capabilities.
     */
    long getCapabilities();
  }
  /**
   * <pre>
   * execute a statement in the given namespace
   * .. uml::
   *   client -&gt; server: StmtExecute
   *   ... zero or more Resultsets ...
   *   server --&gt; client: StmtExecuteOk
   * Notices:
   *   This message may generate a notice containing WARNINGs generated by its execution.
   *   This message may generate a notice containing INFO messages generated by its execution.
   * :param namespace: namespace of the statement to be executed
   * :param stmt: statement that shall be executed.
   * :param args: values for wildcard replacements
   * :param compact_metadata: send only type information for :protobuf:msg:`Polarx.Resultset::ColumnMetadata`, skipping names and others
   * :returns:
   *    * zero or one :protobuf:msg:`Polarx.Resultset::` followed by :protobuf:msg:`Polarx.Sql::StmtExecuteOk`
   * </pre>
   *
   * Protobuf type {@code Polarx.Sql.StmtExecute}
   */
  public  static final class StmtExecute extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:Polarx.Sql.StmtExecute)
      StmtExecuteOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use StmtExecute.newBuilder() to construct.
    private StmtExecute(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private StmtExecute() {
      namespace_ = "sql";
      stmt_ = com.google.protobuf.ByteString.EMPTY;
      stmtDigest_ = com.google.protobuf.ByteString.EMPTY;
      hint_ = com.google.protobuf.ByteString.EMPTY;
      args_ = java.util.Collections.emptyList();
      schemaName_ = "";
      sessionVariables_ = java.util.Collections.emptyList();
      encoding_ = "";
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new StmtExecute();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private StmtExecute(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              bitField0_ |= 0x00000002;
              stmt_ = input.readBytes();
              break;
            }
            case 18: {
              if (!((mutable_bitField0_ & 0x00000040) != 0)) {
                args_ = new java.util.ArrayList<com.mysql.cj.x.protobuf.PolarxDatatypes.Any>();
                mutable_bitField0_ |= 0x00000040;
              }
              args_.add(
                  input.readMessage(com.mysql.cj.x.protobuf.PolarxDatatypes.Any.PARSER, extensionRegistry));
              break;
            }
            case 26: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00000001;
              namespace_ = bs;
              break;
            }
            case 32: {
              bitField0_ |= 0x00000040;
              compactMetadata_ = input.readBool();
              break;
            }
            case 42: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00000080;
              schemaName_ = bs;
              break;
            }
            case 50: {
              if (!((mutable_bitField0_ & 0x00000200) != 0)) {
                sessionVariables_ = new java.util.ArrayList<com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable>();
                mutable_bitField0_ |= 0x00000200;
              }
              sessionVariables_.add(
                  input.readMessage(com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable.PARSER, extensionRegistry));
              break;
            }
            case 58: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00000100;
              encoding_ = bs;
              break;
            }
            case 64: {
              bitField0_ |= 0x00000200;
              token_ = input.readInt32();
              break;
            }
            case 72: {
              bitField0_ |= 0x00000400;
              resetError_ = input.readBool();
              break;
            }
            case 80: {
              bitField0_ |= 0x00000800;
              snapshotSeq_ = input.readUInt64();
              break;
            }
            case 88: {
              bitField0_ |= 0x00001000;
              commitSeq_ = input.readUInt64();
              break;
            }
            case 98: {
              bitField0_ |= 0x00000004;
              stmtDigest_ = input.readBytes();
              break;
            }
            case 106: {
              bitField0_ |= 0x00000008;
              hint_ = input.readBytes();
              break;
            }
            case 112: {
              bitField0_ |= 0x00000010;
              chunkResult_ = input.readBool();
              break;
            }
            case 120: {
              bitField0_ |= 0x00002000;
              useCtsTransaction_ = input.readBool();
              break;
            }
            case 128: {
              bitField0_ |= 0x00000020;
              feedBack_ = input.readBool();
              break;
            }
            case 136: {
              bitField0_ |= 0x00004000;
              capabilities_ = input.readUInt64();
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000040) != 0)) {
          args_ = java.util.Collections.unmodifiableList(args_);
        }
        if (((mutable_bitField0_ & 0x00000200) != 0)) {
          sessionVariables_ = java.util.Collections.unmodifiableList(sessionVariables_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return com.mysql.cj.polarx.protobuf.PolarxSql.internal_static_Polarx_Sql_StmtExecute_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return com.mysql.cj.polarx.protobuf.PolarxSql.internal_static_Polarx_Sql_StmtExecute_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecute.class, com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecute.Builder.class);
    }

    private int bitField0_;
    public static final int NAMESPACE_FIELD_NUMBER = 3;
    private volatile java.lang.Object namespace_;
    /**
     * <code>optional string namespace = 3 [default = "sql"];</code>
     * @return Whether the namespace field is set.
     */
    public boolean hasNamespace() {
      return ((bitField0_ & 0x00000001) != 0);
    }
    /**
     * <code>optional string namespace = 3 [default = "sql"];</code>
     * @return The namespace.
     */
    public java.lang.String getNamespace() {
      java.lang.Object ref = namespace_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          namespace_ = s;
        }
        return s;
      }
    }
    /**
     * <code>optional string namespace = 3 [default = "sql"];</code>
     * @return The bytes for namespace.
     */
    public com.google.protobuf.ByteString
        getNamespaceBytes() {
      java.lang.Object ref = namespace_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        namespace_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int STMT_FIELD_NUMBER = 1;
    private com.google.protobuf.ByteString stmt_;
    /**
     * <code>optional bytes stmt = 1;</code>
     * @return Whether the stmt field is set.
     */
    public boolean hasStmt() {
      return ((bitField0_ & 0x00000002) != 0);
    }
    /**
     * <code>optional bytes stmt = 1;</code>
     * @return The stmt.
     */
    public com.google.protobuf.ByteString getStmt() {
      return stmt_;
    }

    public static final int STMT_DIGEST_FIELD_NUMBER = 12;
    private com.google.protobuf.ByteString stmtDigest_;
    /**
     * <code>optional bytes stmt_digest = 12;</code>
     * @return Whether the stmtDigest field is set.
     */
    public boolean hasStmtDigest() {
      return ((bitField0_ & 0x00000004) != 0);
    }
    /**
     * <code>optional bytes stmt_digest = 12;</code>
     * @return The stmtDigest.
     */
    public com.google.protobuf.ByteString getStmtDigest() {
      return stmtDigest_;
    }

    public static final int HINT_FIELD_NUMBER = 13;
    private com.google.protobuf.ByteString hint_;
    /**
     * <code>optional bytes hint = 13;</code>
     * @return Whether the hint field is set.
     */
    public boolean hasHint() {
      return ((bitField0_ & 0x00000008) != 0);
    }
    /**
     * <code>optional bytes hint = 13;</code>
     * @return The hint.
     */
    public com.google.protobuf.ByteString getHint() {
      return hint_;
    }

    public static final int CHUNK_RESULT_FIELD_NUMBER = 14;
    private boolean chunkResult_;
    /**
     * <code>optional bool chunk_result = 14 [default = false];</code>
     * @return Whether the chunkResult field is set.
     */
    public boolean hasChunkResult() {
      return ((bitField0_ & 0x00000010) != 0);
    }
    /**
     * <code>optional bool chunk_result = 14 [default = false];</code>
     * @return The chunkResult.
     */
    public boolean getChunkResult() {
      return chunkResult_;
    }

    public static final int FEED_BACK_FIELD_NUMBER = 16;
    private boolean feedBack_;
    /**
     * <code>optional bool feed_back = 16 [default = false];</code>
     * @return Whether the feedBack field is set.
     */
    public boolean hasFeedBack() {
      return ((bitField0_ & 0x00000020) != 0);
    }
    /**
     * <code>optional bool feed_back = 16 [default = false];</code>
     * @return The feedBack.
     */
    public boolean getFeedBack() {
      return feedBack_;
    }

    public static final int ARGS_FIELD_NUMBER = 2;
    private java.util.List<com.mysql.cj.x.protobuf.PolarxDatatypes.Any> args_;
    /**
     * <code>repeated .Polarx.Datatypes.Any args = 2;</code>
     */
    public java.util.List<com.mysql.cj.x.protobuf.PolarxDatatypes.Any> getArgsList() {
      return args_;
    }
    /**
     * <code>repeated .Polarx.Datatypes.Any args = 2;</code>
     */
    public java.util.List<? extends com.mysql.cj.x.protobuf.PolarxDatatypes.AnyOrBuilder> 
        getArgsOrBuilderList() {
      return args_;
    }
    /**
     * <code>repeated .Polarx.Datatypes.Any args = 2;</code>
     */
    public int getArgsCount() {
      return args_.size();
    }
    /**
     * <code>repeated .Polarx.Datatypes.Any args = 2;</code>
     */
    public com.mysql.cj.x.protobuf.PolarxDatatypes.Any getArgs(int index) {
      return args_.get(index);
    }
    /**
     * <code>repeated .Polarx.Datatypes.Any args = 2;</code>
     */
    public com.mysql.cj.x.protobuf.PolarxDatatypes.AnyOrBuilder getArgsOrBuilder(
        int index) {
      return args_.get(index);
    }

    public static final int COMPACT_METADATA_FIELD_NUMBER = 4;
    private boolean compactMetadata_;
    /**
     * <code>optional bool compact_metadata = 4 [default = false];</code>
     * @return Whether the compactMetadata field is set.
     */
    public boolean hasCompactMetadata() {
      return ((bitField0_ & 0x00000040) != 0);
    }
    /**
     * <code>optional bool compact_metadata = 4 [default = false];</code>
     * @return The compactMetadata.
     */
    public boolean getCompactMetadata() {
      return compactMetadata_;
    }

    public static final int SCHEMA_NAME_FIELD_NUMBER = 5;
    private volatile java.lang.Object schemaName_;
    /**
     * <pre>
     * For auto commit request.
     * </pre>
     *
     * <code>optional string schema_name = 5;</code>
     * @return Whether the schemaName field is set.
     */
    public boolean hasSchemaName() {
      return ((bitField0_ & 0x00000080) != 0);
    }
    /**
     * <pre>
     * For auto commit request.
     * </pre>
     *
     * <code>optional string schema_name = 5;</code>
     * @return The schemaName.
     */
    public java.lang.String getSchemaName() {
      java.lang.Object ref = schemaName_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          schemaName_ = s;
        }
        return s;
      }
    }
    /**
     * <pre>
     * For auto commit request.
     * </pre>
     *
     * <code>optional string schema_name = 5;</code>
     * @return The bytes for schemaName.
     */
    public com.google.protobuf.ByteString
        getSchemaNameBytes() {
      java.lang.Object ref = schemaName_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        schemaName_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int SESSION_VARIABLES_FIELD_NUMBER = 6;
    private java.util.List<com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable> sessionVariables_;
    /**
     * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 6;</code>
     */
    public java.util.List<com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable> getSessionVariablesList() {
      return sessionVariables_;
    }
    /**
     * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 6;</code>
     */
    public java.util.List<? extends com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariableOrBuilder> 
        getSessionVariablesOrBuilderList() {
      return sessionVariables_;
    }
    /**
     * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 6;</code>
     */
    public int getSessionVariablesCount() {
      return sessionVariables_.size();
    }
    /**
     * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 6;</code>
     */
    public com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable getSessionVariables(int index) {
      return sessionVariables_.get(index);
    }
    /**
     * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 6;</code>
     */
    public com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariableOrBuilder getSessionVariablesOrBuilder(
        int index) {
      return sessionVariables_.get(index);
    }

    public static final int ENCODING_FIELD_NUMBER = 7;
    private volatile java.lang.Object encoding_;
    /**
     * <code>optional string encoding = 7;</code>
     * @return Whether the encoding field is set.
     */
    public boolean hasEncoding() {
      return ((bitField0_ & 0x00000100) != 0);
    }
    /**
     * <code>optional string encoding = 7;</code>
     * @return The encoding.
     */
    public java.lang.String getEncoding() {
      java.lang.Object ref = encoding_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          encoding_ = s;
        }
        return s;
      }
    }
    /**
     * <code>optional string encoding = 7;</code>
     * @return The bytes for encoding.
     */
    public com.google.protobuf.ByteString
        getEncodingBytes() {
      java.lang.Object ref = encoding_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        encoding_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int TOKEN_FIELD_NUMBER = 8;
    private int token_;
    /**
     * <code>optional int32 token = 8;</code>
     * @return Whether the token field is set.
     */
    public boolean hasToken() {
      return ((bitField0_ & 0x00000200) != 0);
    }
    /**
     * <code>optional int32 token = 8;</code>
     * @return The token.
     */
    public int getToken() {
      return token_;
    }

    public static final int RESET_ERROR_FIELD_NUMBER = 9;
    private boolean resetError_;
    /**
     * <code>optional bool reset_error = 9;</code>
     * @return Whether the resetError field is set.
     */
    public boolean hasResetError() {
      return ((bitField0_ & 0x00000400) != 0);
    }
    /**
     * <code>optional bool reset_error = 9;</code>
     * @return The resetError.
     */
    public boolean getResetError() {
      return resetError_;
    }

    public static final int SNAPSHOT_SEQ_FIELD_NUMBER = 10;
    private long snapshotSeq_;
    /**
     * <code>optional uint64 snapshot_seq = 10;</code>
     * @return Whether the snapshotSeq field is set.
     */
    public boolean hasSnapshotSeq() {
      return ((bitField0_ & 0x00000800) != 0);
    }
    /**
     * <code>optional uint64 snapshot_seq = 10;</code>
     * @return The snapshotSeq.
     */
    public long getSnapshotSeq() {
      return snapshotSeq_;
    }

    public static final int COMMIT_SEQ_FIELD_NUMBER = 11;
    private long commitSeq_;
    /**
     * <code>optional uint64 commit_seq = 11;</code>
     * @return Whether the commitSeq field is set.
     */
    public boolean hasCommitSeq() {
      return ((bitField0_ & 0x00001000) != 0);
    }
    /**
     * <code>optional uint64 commit_seq = 11;</code>
     * @return The commitSeq.
     */
    public long getCommitSeq() {
      return commitSeq_;
    }

    public static final int USE_CTS_TRANSACTION_FIELD_NUMBER = 15;
    private boolean useCtsTransaction_;
    /**
     * <code>optional bool use_cts_transaction = 15;</code>
     * @return Whether the useCtsTransaction field is set.
     */
    public boolean hasUseCtsTransaction() {
      return ((bitField0_ & 0x00002000) != 0);
    }
    /**
     * <code>optional bool use_cts_transaction = 15;</code>
     * @return The useCtsTransaction.
     */
    public boolean getUseCtsTransaction() {
      return useCtsTransaction_;
    }

    public static final int CAPABILITIES_FIELD_NUMBER = 17;
    private long capabilities_;
    /**
     * <pre>
     * capabilities
     * </pre>
     *
     * <code>optional uint64 capabilities = 17;</code>
     * @return Whether the capabilities field is set.
     */
    public boolean hasCapabilities() {
      return ((bitField0_ & 0x00004000) != 0);
    }
    /**
     * <pre>
     * capabilities
     * </pre>
     *
     * <code>optional uint64 capabilities = 17;</code>
     * @return The capabilities.
     */
    public long getCapabilities() {
      return capabilities_;
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      for (int i = 0; i < getArgsCount(); i++) {
        if (!getArgs(i).isInitialized()) {
          memoizedIsInitialized = 0;
          return false;
        }
      }
      for (int i = 0; i < getSessionVariablesCount(); i++) {
        if (!getSessionVariables(i).isInitialized()) {
          memoizedIsInitialized = 0;
          return false;
        }
      }
      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (((bitField0_ & 0x00000002) != 0)) {
        output.writeBytes(1, stmt_);
      }
      for (int i = 0; i < args_.size(); i++) {
        output.writeMessage(2, args_.get(i));
      }
      if (((bitField0_ & 0x00000001) != 0)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 3, namespace_);
      }
      if (((bitField0_ & 0x00000040) != 0)) {
        output.writeBool(4, compactMetadata_);
      }
      if (((bitField0_ & 0x00000080) != 0)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 5, schemaName_);
      }
      for (int i = 0; i < sessionVariables_.size(); i++) {
        output.writeMessage(6, sessionVariables_.get(i));
      }
      if (((bitField0_ & 0x00000100) != 0)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 7, encoding_);
      }
      if (((bitField0_ & 0x00000200) != 0)) {
        output.writeInt32(8, token_);
      }
      if (((bitField0_ & 0x00000400) != 0)) {
        output.writeBool(9, resetError_);
      }
      if (((bitField0_ & 0x00000800) != 0)) {
        output.writeUInt64(10, snapshotSeq_);
      }
      if (((bitField0_ & 0x00001000) != 0)) {
        output.writeUInt64(11, commitSeq_);
      }
      if (((bitField0_ & 0x00000004) != 0)) {
        output.writeBytes(12, stmtDigest_);
      }
      if (((bitField0_ & 0x00000008) != 0)) {
        output.writeBytes(13, hint_);
      }
      if (((bitField0_ & 0x00000010) != 0)) {
        output.writeBool(14, chunkResult_);
      }
      if (((bitField0_ & 0x00002000) != 0)) {
        output.writeBool(15, useCtsTransaction_);
      }
      if (((bitField0_ & 0x00000020) != 0)) {
        output.writeBool(16, feedBack_);
      }
      if (((bitField0_ & 0x00004000) != 0)) {
        output.writeUInt64(17, capabilities_);
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (((bitField0_ & 0x00000002) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(1, stmt_);
      }
      for (int i = 0; i < args_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(2, args_.get(i));
      }
      if (((bitField0_ & 0x00000001) != 0)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(3, namespace_);
      }
      if (((bitField0_ & 0x00000040) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBoolSize(4, compactMetadata_);
      }
      if (((bitField0_ & 0x00000080) != 0)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(5, schemaName_);
      }
      for (int i = 0; i < sessionVariables_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(6, sessionVariables_.get(i));
      }
      if (((bitField0_ & 0x00000100) != 0)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(7, encoding_);
      }
      if (((bitField0_ & 0x00000200) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(8, token_);
      }
      if (((bitField0_ & 0x00000400) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBoolSize(9, resetError_);
      }
      if (((bitField0_ & 0x00000800) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeUInt64Size(10, snapshotSeq_);
      }
      if (((bitField0_ & 0x00001000) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeUInt64Size(11, commitSeq_);
      }
      if (((bitField0_ & 0x00000004) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(12, stmtDigest_);
      }
      if (((bitField0_ & 0x00000008) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(13, hint_);
      }
      if (((bitField0_ & 0x00000010) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBoolSize(14, chunkResult_);
      }
      if (((bitField0_ & 0x00002000) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBoolSize(15, useCtsTransaction_);
      }
      if (((bitField0_ & 0x00000020) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBoolSize(16, feedBack_);
      }
      if (((bitField0_ & 0x00004000) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeUInt64Size(17, capabilities_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecute)) {
        return super.equals(obj);
      }
      com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecute other = (com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecute) obj;

      if (hasNamespace() != other.hasNamespace()) return false;
      if (hasNamespace()) {
        if (!getNamespace()
            .equals(other.getNamespace())) return false;
      }
      if (hasStmt() != other.hasStmt()) return false;
      if (hasStmt()) {
        if (!getStmt()
            .equals(other.getStmt())) return false;
      }
      if (hasStmtDigest() != other.hasStmtDigest()) return false;
      if (hasStmtDigest()) {
        if (!getStmtDigest()
            .equals(other.getStmtDigest())) return false;
      }
      if (hasHint() != other.hasHint()) return false;
      if (hasHint()) {
        if (!getHint()
            .equals(other.getHint())) return false;
      }
      if (hasChunkResult() != other.hasChunkResult()) return false;
      if (hasChunkResult()) {
        if (getChunkResult()
            != other.getChunkResult()) return false;
      }
      if (hasFeedBack() != other.hasFeedBack()) return false;
      if (hasFeedBack()) {
        if (getFeedBack()
            != other.getFeedBack()) return false;
      }
      if (!getArgsList()
          .equals(other.getArgsList())) return false;
      if (hasCompactMetadata() != other.hasCompactMetadata()) return false;
      if (hasCompactMetadata()) {
        if (getCompactMetadata()
            != other.getCompactMetadata()) return false;
      }
      if (hasSchemaName() != other.hasSchemaName()) return false;
      if (hasSchemaName()) {
        if (!getSchemaName()
            .equals(other.getSchemaName())) return false;
      }
      if (!getSessionVariablesList()
          .equals(other.getSessionVariablesList())) return false;
      if (hasEncoding() != other.hasEncoding()) return false;
      if (hasEncoding()) {
        if (!getEncoding()
            .equals(other.getEncoding())) return false;
      }
      if (hasToken() != other.hasToken()) return false;
      if (hasToken()) {
        if (getToken()
            != other.getToken()) return false;
      }
      if (hasResetError() != other.hasResetError()) return false;
      if (hasResetError()) {
        if (getResetError()
            != other.getResetError()) return false;
      }
      if (hasSnapshotSeq() != other.hasSnapshotSeq()) return false;
      if (hasSnapshotSeq()) {
        if (getSnapshotSeq()
            != other.getSnapshotSeq()) return false;
      }
      if (hasCommitSeq() != other.hasCommitSeq()) return false;
      if (hasCommitSeq()) {
        if (getCommitSeq()
            != other.getCommitSeq()) return false;
      }
      if (hasUseCtsTransaction() != other.hasUseCtsTransaction()) return false;
      if (hasUseCtsTransaction()) {
        if (getUseCtsTransaction()
            != other.getUseCtsTransaction()) return false;
      }
      if (hasCapabilities() != other.hasCapabilities()) return false;
      if (hasCapabilities()) {
        if (getCapabilities()
            != other.getCapabilities()) return false;
      }
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (hasNamespace()) {
        hash = (37 * hash) + NAMESPACE_FIELD_NUMBER;
        hash = (53 * hash) + getNamespace().hashCode();
      }
      if (hasStmt()) {
        hash = (37 * hash) + STMT_FIELD_NUMBER;
        hash = (53 * hash) + getStmt().hashCode();
      }
      if (hasStmtDigest()) {
        hash = (37 * hash) + STMT_DIGEST_FIELD_NUMBER;
        hash = (53 * hash) + getStmtDigest().hashCode();
      }
      if (hasHint()) {
        hash = (37 * hash) + HINT_FIELD_NUMBER;
        hash = (53 * hash) + getHint().hashCode();
      }
      if (hasChunkResult()) {
        hash = (37 * hash) + CHUNK_RESULT_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
            getChunkResult());
      }
      if (hasFeedBack()) {
        hash = (37 * hash) + FEED_BACK_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
            getFeedBack());
      }
      if (getArgsCount() > 0) {
        hash = (37 * hash) + ARGS_FIELD_NUMBER;
        hash = (53 * hash) + getArgsList().hashCode();
      }
      if (hasCompactMetadata()) {
        hash = (37 * hash) + COMPACT_METADATA_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
            getCompactMetadata());
      }
      if (hasSchemaName()) {
        hash = (37 * hash) + SCHEMA_NAME_FIELD_NUMBER;
        hash = (53 * hash) + getSchemaName().hashCode();
      }
      if (getSessionVariablesCount() > 0) {
        hash = (37 * hash) + SESSION_VARIABLES_FIELD_NUMBER;
        hash = (53 * hash) + getSessionVariablesList().hashCode();
      }
      if (hasEncoding()) {
        hash = (37 * hash) + ENCODING_FIELD_NUMBER;
        hash = (53 * hash) + getEncoding().hashCode();
      }
      if (hasToken()) {
        hash = (37 * hash) + TOKEN_FIELD_NUMBER;
        hash = (53 * hash) + getToken();
      }
      if (hasResetError()) {
        hash = (37 * hash) + RESET_ERROR_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
            getResetError());
      }
      if (hasSnapshotSeq()) {
        hash = (37 * hash) + SNAPSHOT_SEQ_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getSnapshotSeq());
      }
      if (hasCommitSeq()) {
        hash = (37 * hash) + COMMIT_SEQ_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getCommitSeq());
      }
      if (hasUseCtsTransaction()) {
        hash = (37 * hash) + USE_CTS_TRANSACTION_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
            getUseCtsTransaction());
      }
      if (hasCapabilities()) {
        hash = (37 * hash) + CAPABILITIES_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getCapabilities());
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecute parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecute parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecute parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecute parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecute parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecute parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecute parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecute parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecute parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecute parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecute parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecute parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecute prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * <pre>
     * execute a statement in the given namespace
     * .. uml::
     *   client -&gt; server: StmtExecute
     *   ... zero or more Resultsets ...
     *   server --&gt; client: StmtExecuteOk
     * Notices:
     *   This message may generate a notice containing WARNINGs generated by its execution.
     *   This message may generate a notice containing INFO messages generated by its execution.
     * :param namespace: namespace of the statement to be executed
     * :param stmt: statement that shall be executed.
     * :param args: values for wildcard replacements
     * :param compact_metadata: send only type information for :protobuf:msg:`Polarx.Resultset::ColumnMetadata`, skipping names and others
     * :returns:
     *    * zero or one :protobuf:msg:`Polarx.Resultset::` followed by :protobuf:msg:`Polarx.Sql::StmtExecuteOk`
     * </pre>
     *
     * Protobuf type {@code Polarx.Sql.StmtExecute}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:Polarx.Sql.StmtExecute)
        com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecuteOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.mysql.cj.polarx.protobuf.PolarxSql.internal_static_Polarx_Sql_StmtExecute_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.mysql.cj.polarx.protobuf.PolarxSql.internal_static_Polarx_Sql_StmtExecute_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecute.class, com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecute.Builder.class);
      }

      // Construct using com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecute.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
          getArgsFieldBuilder();
          getSessionVariablesFieldBuilder();
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        namespace_ = "sql";
        bitField0_ = (bitField0_ & ~0x00000001);
        stmt_ = com.google.protobuf.ByteString.EMPTY;
        bitField0_ = (bitField0_ & ~0x00000002);
        stmtDigest_ = com.google.protobuf.ByteString.EMPTY;
        bitField0_ = (bitField0_ & ~0x00000004);
        hint_ = com.google.protobuf.ByteString.EMPTY;
        bitField0_ = (bitField0_ & ~0x00000008);
        chunkResult_ = false;
        bitField0_ = (bitField0_ & ~0x00000010);
        feedBack_ = false;
        bitField0_ = (bitField0_ & ~0x00000020);
        if (argsBuilder_ == null) {
          args_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000040);
        } else {
          argsBuilder_.clear();
        }
        compactMetadata_ = false;
        bitField0_ = (bitField0_ & ~0x00000080);
        schemaName_ = "";
        bitField0_ = (bitField0_ & ~0x00000100);
        if (sessionVariablesBuilder_ == null) {
          sessionVariables_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000200);
        } else {
          sessionVariablesBuilder_.clear();
        }
        encoding_ = "";
        bitField0_ = (bitField0_ & ~0x00000400);
        token_ = 0;
        bitField0_ = (bitField0_ & ~0x00000800);
        resetError_ = false;
        bitField0_ = (bitField0_ & ~0x00001000);
        snapshotSeq_ = 0L;
        bitField0_ = (bitField0_ & ~0x00002000);
        commitSeq_ = 0L;
        bitField0_ = (bitField0_ & ~0x00004000);
        useCtsTransaction_ = false;
        bitField0_ = (bitField0_ & ~0x00008000);
        capabilities_ = 0L;
        bitField0_ = (bitField0_ & ~0x00010000);
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return com.mysql.cj.polarx.protobuf.PolarxSql.internal_static_Polarx_Sql_StmtExecute_descriptor;
      }

      @java.lang.Override
      public com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecute getDefaultInstanceForType() {
        return com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecute.getDefaultInstance();
      }

      @java.lang.Override
      public com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecute build() {
        com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecute result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecute buildPartial() {
        com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecute result = new com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecute(this);
        int from_bitField0_ = bitField0_;
        int to_bitField0_ = 0;
        if (((from_bitField0_ & 0x00000001) != 0)) {
          to_bitField0_ |= 0x00000001;
        }
        result.namespace_ = namespace_;
        if (((from_bitField0_ & 0x00000002) != 0)) {
          to_bitField0_ |= 0x00000002;
        }
        result.stmt_ = stmt_;
        if (((from_bitField0_ & 0x00000004) != 0)) {
          to_bitField0_ |= 0x00000004;
        }
        result.stmtDigest_ = stmtDigest_;
        if (((from_bitField0_ & 0x00000008) != 0)) {
          to_bitField0_ |= 0x00000008;
        }
        result.hint_ = hint_;
        if (((from_bitField0_ & 0x00000010) != 0)) {
          result.chunkResult_ = chunkResult_;
          to_bitField0_ |= 0x00000010;
        }
        if (((from_bitField0_ & 0x00000020) != 0)) {
          result.feedBack_ = feedBack_;
          to_bitField0_ |= 0x00000020;
        }
        if (argsBuilder_ == null) {
          if (((bitField0_ & 0x00000040) != 0)) {
            args_ = java.util.Collections.unmodifiableList(args_);
            bitField0_ = (bitField0_ & ~0x00000040);
          }
          result.args_ = args_;
        } else {
          result.args_ = argsBuilder_.build();
        }
        if (((from_bitField0_ & 0x00000080) != 0)) {
          result.compactMetadata_ = compactMetadata_;
          to_bitField0_ |= 0x00000040;
        }
        if (((from_bitField0_ & 0x00000100) != 0)) {
          to_bitField0_ |= 0x00000080;
        }
        result.schemaName_ = schemaName_;
        if (sessionVariablesBuilder_ == null) {
          if (((bitField0_ & 0x00000200) != 0)) {
            sessionVariables_ = java.util.Collections.unmodifiableList(sessionVariables_);
            bitField0_ = (bitField0_ & ~0x00000200);
          }
          result.sessionVariables_ = sessionVariables_;
        } else {
          result.sessionVariables_ = sessionVariablesBuilder_.build();
        }
        if (((from_bitField0_ & 0x00000400) != 0)) {
          to_bitField0_ |= 0x00000100;
        }
        result.encoding_ = encoding_;
        if (((from_bitField0_ & 0x00000800) != 0)) {
          result.token_ = token_;
          to_bitField0_ |= 0x00000200;
        }
        if (((from_bitField0_ & 0x00001000) != 0)) {
          result.resetError_ = resetError_;
          to_bitField0_ |= 0x00000400;
        }
        if (((from_bitField0_ & 0x00002000) != 0)) {
          result.snapshotSeq_ = snapshotSeq_;
          to_bitField0_ |= 0x00000800;
        }
        if (((from_bitField0_ & 0x00004000) != 0)) {
          result.commitSeq_ = commitSeq_;
          to_bitField0_ |= 0x00001000;
        }
        if (((from_bitField0_ & 0x00008000) != 0)) {
          result.useCtsTransaction_ = useCtsTransaction_;
          to_bitField0_ |= 0x00002000;
        }
        if (((from_bitField0_ & 0x00010000) != 0)) {
          result.capabilities_ = capabilities_;
          to_bitField0_ |= 0x00004000;
        }
        result.bitField0_ = to_bitField0_;
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecute) {
          return mergeFrom((com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecute)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecute other) {
        if (other == com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecute.getDefaultInstance()) return this;
        if (other.hasNamespace()) {
          bitField0_ |= 0x00000001;
          namespace_ = other.namespace_;
          onChanged();
        }
        if (other.hasStmt()) {
          setStmt(other.getStmt());
        }
        if (other.hasStmtDigest()) {
          setStmtDigest(other.getStmtDigest());
        }
        if (other.hasHint()) {
          setHint(other.getHint());
        }
        if (other.hasChunkResult()) {
          setChunkResult(other.getChunkResult());
        }
        if (other.hasFeedBack()) {
          setFeedBack(other.getFeedBack());
        }
        if (argsBuilder_ == null) {
          if (!other.args_.isEmpty()) {
            if (args_.isEmpty()) {
              args_ = other.args_;
              bitField0_ = (bitField0_ & ~0x00000040);
            } else {
              ensureArgsIsMutable();
              args_.addAll(other.args_);
            }
            onChanged();
          }
        } else {
          if (!other.args_.isEmpty()) {
            if (argsBuilder_.isEmpty()) {
              argsBuilder_.dispose();
              argsBuilder_ = null;
              args_ = other.args_;
              bitField0_ = (bitField0_ & ~0x00000040);
              argsBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getArgsFieldBuilder() : null;
            } else {
              argsBuilder_.addAllMessages(other.args_);
            }
          }
        }
        if (other.hasCompactMetadata()) {
          setCompactMetadata(other.getCompactMetadata());
        }
        if (other.hasSchemaName()) {
          bitField0_ |= 0x00000100;
          schemaName_ = other.schemaName_;
          onChanged();
        }
        if (sessionVariablesBuilder_ == null) {
          if (!other.sessionVariables_.isEmpty()) {
            if (sessionVariables_.isEmpty()) {
              sessionVariables_ = other.sessionVariables_;
              bitField0_ = (bitField0_ & ~0x00000200);
            } else {
              ensureSessionVariablesIsMutable();
              sessionVariables_.addAll(other.sessionVariables_);
            }
            onChanged();
          }
        } else {
          if (!other.sessionVariables_.isEmpty()) {
            if (sessionVariablesBuilder_.isEmpty()) {
              sessionVariablesBuilder_.dispose();
              sessionVariablesBuilder_ = null;
              sessionVariables_ = other.sessionVariables_;
              bitField0_ = (bitField0_ & ~0x00000200);
              sessionVariablesBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getSessionVariablesFieldBuilder() : null;
            } else {
              sessionVariablesBuilder_.addAllMessages(other.sessionVariables_);
            }
          }
        }
        if (other.hasEncoding()) {
          bitField0_ |= 0x00000400;
          encoding_ = other.encoding_;
          onChanged();
        }
        if (other.hasToken()) {
          setToken(other.getToken());
        }
        if (other.hasResetError()) {
          setResetError(other.getResetError());
        }
        if (other.hasSnapshotSeq()) {
          setSnapshotSeq(other.getSnapshotSeq());
        }
        if (other.hasCommitSeq()) {
          setCommitSeq(other.getCommitSeq());
        }
        if (other.hasUseCtsTransaction()) {
          setUseCtsTransaction(other.getUseCtsTransaction());
        }
        if (other.hasCapabilities()) {
          setCapabilities(other.getCapabilities());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        for (int i = 0; i < getArgsCount(); i++) {
          if (!getArgs(i).isInitialized()) {
            return false;
          }
        }
        for (int i = 0; i < getSessionVariablesCount(); i++) {
          if (!getSessionVariables(i).isInitialized()) {
            return false;
          }
        }
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecute parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecute) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private java.lang.Object namespace_ = "sql";
      /**
       * <code>optional string namespace = 3 [default = "sql"];</code>
       * @return Whether the namespace field is set.
       */
      public boolean hasNamespace() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>optional string namespace = 3 [default = "sql"];</code>
       * @return The namespace.
       */
      public java.lang.String getNamespace() {
        java.lang.Object ref = namespace_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            namespace_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>optional string namespace = 3 [default = "sql"];</code>
       * @return The bytes for namespace.
       */
      public com.google.protobuf.ByteString
          getNamespaceBytes() {
        java.lang.Object ref = namespace_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          namespace_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>optional string namespace = 3 [default = "sql"];</code>
       * @param value The namespace to set.
       * @return This builder for chaining.
       */
      public Builder setNamespace(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000001;
        namespace_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional string namespace = 3 [default = "sql"];</code>
       * @return This builder for chaining.
       */
      public Builder clearNamespace() {
        bitField0_ = (bitField0_ & ~0x00000001);
        namespace_ = getDefaultInstance().getNamespace();
        onChanged();
        return this;
      }
      /**
       * <code>optional string namespace = 3 [default = "sql"];</code>
       * @param value The bytes for namespace to set.
       * @return This builder for chaining.
       */
      public Builder setNamespaceBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000001;
        namespace_ = value;
        onChanged();
        return this;
      }

      private com.google.protobuf.ByteString stmt_ = com.google.protobuf.ByteString.EMPTY;
      /**
       * <code>optional bytes stmt = 1;</code>
       * @return Whether the stmt field is set.
       */
      public boolean hasStmt() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>optional bytes stmt = 1;</code>
       * @return The stmt.
       */
      public com.google.protobuf.ByteString getStmt() {
        return stmt_;
      }
      /**
       * <code>optional bytes stmt = 1;</code>
       * @param value The stmt to set.
       * @return This builder for chaining.
       */
      public Builder setStmt(com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000002;
        stmt_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional bytes stmt = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearStmt() {
        bitField0_ = (bitField0_ & ~0x00000002);
        stmt_ = getDefaultInstance().getStmt();
        onChanged();
        return this;
      }

      private com.google.protobuf.ByteString stmtDigest_ = com.google.protobuf.ByteString.EMPTY;
      /**
       * <code>optional bytes stmt_digest = 12;</code>
       * @return Whether the stmtDigest field is set.
       */
      public boolean hasStmtDigest() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <code>optional bytes stmt_digest = 12;</code>
       * @return The stmtDigest.
       */
      public com.google.protobuf.ByteString getStmtDigest() {
        return stmtDigest_;
      }
      /**
       * <code>optional bytes stmt_digest = 12;</code>
       * @param value The stmtDigest to set.
       * @return This builder for chaining.
       */
      public Builder setStmtDigest(com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000004;
        stmtDigest_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional bytes stmt_digest = 12;</code>
       * @return This builder for chaining.
       */
      public Builder clearStmtDigest() {
        bitField0_ = (bitField0_ & ~0x00000004);
        stmtDigest_ = getDefaultInstance().getStmtDigest();
        onChanged();
        return this;
      }

      private com.google.protobuf.ByteString hint_ = com.google.protobuf.ByteString.EMPTY;
      /**
       * <code>optional bytes hint = 13;</code>
       * @return Whether the hint field is set.
       */
      public boolean hasHint() {
        return ((bitField0_ & 0x00000008) != 0);
      }
      /**
       * <code>optional bytes hint = 13;</code>
       * @return The hint.
       */
      public com.google.protobuf.ByteString getHint() {
        return hint_;
      }
      /**
       * <code>optional bytes hint = 13;</code>
       * @param value The hint to set.
       * @return This builder for chaining.
       */
      public Builder setHint(com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000008;
        hint_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional bytes hint = 13;</code>
       * @return This builder for chaining.
       */
      public Builder clearHint() {
        bitField0_ = (bitField0_ & ~0x00000008);
        hint_ = getDefaultInstance().getHint();
        onChanged();
        return this;
      }

      private boolean chunkResult_ ;
      /**
       * <code>optional bool chunk_result = 14 [default = false];</code>
       * @return Whether the chunkResult field is set.
       */
      public boolean hasChunkResult() {
        return ((bitField0_ & 0x00000010) != 0);
      }
      /**
       * <code>optional bool chunk_result = 14 [default = false];</code>
       * @return The chunkResult.
       */
      public boolean getChunkResult() {
        return chunkResult_;
      }
      /**
       * <code>optional bool chunk_result = 14 [default = false];</code>
       * @param value The chunkResult to set.
       * @return This builder for chaining.
       */
      public Builder setChunkResult(boolean value) {
        bitField0_ |= 0x00000010;
        chunkResult_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional bool chunk_result = 14 [default = false];</code>
       * @return This builder for chaining.
       */
      public Builder clearChunkResult() {
        bitField0_ = (bitField0_ & ~0x00000010);
        chunkResult_ = false;
        onChanged();
        return this;
      }

      private boolean feedBack_ ;
      /**
       * <code>optional bool feed_back = 16 [default = false];</code>
       * @return Whether the feedBack field is set.
       */
      public boolean hasFeedBack() {
        return ((bitField0_ & 0x00000020) != 0);
      }
      /**
       * <code>optional bool feed_back = 16 [default = false];</code>
       * @return The feedBack.
       */
      public boolean getFeedBack() {
        return feedBack_;
      }
      /**
       * <code>optional bool feed_back = 16 [default = false];</code>
       * @param value The feedBack to set.
       * @return This builder for chaining.
       */
      public Builder setFeedBack(boolean value) {
        bitField0_ |= 0x00000020;
        feedBack_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional bool feed_back = 16 [default = false];</code>
       * @return This builder for chaining.
       */
      public Builder clearFeedBack() {
        bitField0_ = (bitField0_ & ~0x00000020);
        feedBack_ = false;
        onChanged();
        return this;
      }

      private java.util.List<com.mysql.cj.x.protobuf.PolarxDatatypes.Any> args_ =
        java.util.Collections.emptyList();
      private void ensureArgsIsMutable() {
        if (!((bitField0_ & 0x00000040) != 0)) {
          args_ = new java.util.ArrayList<com.mysql.cj.x.protobuf.PolarxDatatypes.Any>(args_);
          bitField0_ |= 0x00000040;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          com.mysql.cj.x.protobuf.PolarxDatatypes.Any, com.mysql.cj.x.protobuf.PolarxDatatypes.Any.Builder, com.mysql.cj.x.protobuf.PolarxDatatypes.AnyOrBuilder> argsBuilder_;

      /**
       * <code>repeated .Polarx.Datatypes.Any args = 2;</code>
       */
      public java.util.List<com.mysql.cj.x.protobuf.PolarxDatatypes.Any> getArgsList() {
        if (argsBuilder_ == null) {
          return java.util.Collections.unmodifiableList(args_);
        } else {
          return argsBuilder_.getMessageList();
        }
      }
      /**
       * <code>repeated .Polarx.Datatypes.Any args = 2;</code>
       */
      public int getArgsCount() {
        if (argsBuilder_ == null) {
          return args_.size();
        } else {
          return argsBuilder_.getCount();
        }
      }
      /**
       * <code>repeated .Polarx.Datatypes.Any args = 2;</code>
       */
      public com.mysql.cj.x.protobuf.PolarxDatatypes.Any getArgs(int index) {
        if (argsBuilder_ == null) {
          return args_.get(index);
        } else {
          return argsBuilder_.getMessage(index);
        }
      }
      /**
       * <code>repeated .Polarx.Datatypes.Any args = 2;</code>
       */
      public Builder setArgs(
          int index, com.mysql.cj.x.protobuf.PolarxDatatypes.Any value) {
        if (argsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureArgsIsMutable();
          args_.set(index, value);
          onChanged();
        } else {
          argsBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .Polarx.Datatypes.Any args = 2;</code>
       */
      public Builder setArgs(
          int index, com.mysql.cj.x.protobuf.PolarxDatatypes.Any.Builder builderForValue) {
        if (argsBuilder_ == null) {
          ensureArgsIsMutable();
          args_.set(index, builderForValue.build());
          onChanged();
        } else {
          argsBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .Polarx.Datatypes.Any args = 2;</code>
       */
      public Builder addArgs(com.mysql.cj.x.protobuf.PolarxDatatypes.Any value) {
        if (argsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureArgsIsMutable();
          args_.add(value);
          onChanged();
        } else {
          argsBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <code>repeated .Polarx.Datatypes.Any args = 2;</code>
       */
      public Builder addArgs(
          int index, com.mysql.cj.x.protobuf.PolarxDatatypes.Any value) {
        if (argsBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureArgsIsMutable();
          args_.add(index, value);
          onChanged();
        } else {
          argsBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .Polarx.Datatypes.Any args = 2;</code>
       */
      public Builder addArgs(
          com.mysql.cj.x.protobuf.PolarxDatatypes.Any.Builder builderForValue) {
        if (argsBuilder_ == null) {
          ensureArgsIsMutable();
          args_.add(builderForValue.build());
          onChanged();
        } else {
          argsBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .Polarx.Datatypes.Any args = 2;</code>
       */
      public Builder addArgs(
          int index, com.mysql.cj.x.protobuf.PolarxDatatypes.Any.Builder builderForValue) {
        if (argsBuilder_ == null) {
          ensureArgsIsMutable();
          args_.add(index, builderForValue.build());
          onChanged();
        } else {
          argsBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .Polarx.Datatypes.Any args = 2;</code>
       */
      public Builder addAllArgs(
          java.lang.Iterable<? extends com.mysql.cj.x.protobuf.PolarxDatatypes.Any> values) {
        if (argsBuilder_ == null) {
          ensureArgsIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, args_);
          onChanged();
        } else {
          argsBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <code>repeated .Polarx.Datatypes.Any args = 2;</code>
       */
      public Builder clearArgs() {
        if (argsBuilder_ == null) {
          args_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000040);
          onChanged();
        } else {
          argsBuilder_.clear();
        }
        return this;
      }
      /**
       * <code>repeated .Polarx.Datatypes.Any args = 2;</code>
       */
      public Builder removeArgs(int index) {
        if (argsBuilder_ == null) {
          ensureArgsIsMutable();
          args_.remove(index);
          onChanged();
        } else {
          argsBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <code>repeated .Polarx.Datatypes.Any args = 2;</code>
       */
      public com.mysql.cj.x.protobuf.PolarxDatatypes.Any.Builder getArgsBuilder(
          int index) {
        return getArgsFieldBuilder().getBuilder(index);
      }
      /**
       * <code>repeated .Polarx.Datatypes.Any args = 2;</code>
       */
      public com.mysql.cj.x.protobuf.PolarxDatatypes.AnyOrBuilder getArgsOrBuilder(
          int index) {
        if (argsBuilder_ == null) {
          return args_.get(index);  } else {
          return argsBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <code>repeated .Polarx.Datatypes.Any args = 2;</code>
       */
      public java.util.List<? extends com.mysql.cj.x.protobuf.PolarxDatatypes.AnyOrBuilder> 
           getArgsOrBuilderList() {
        if (argsBuilder_ != null) {
          return argsBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(args_);
        }
      }
      /**
       * <code>repeated .Polarx.Datatypes.Any args = 2;</code>
       */
      public com.mysql.cj.x.protobuf.PolarxDatatypes.Any.Builder addArgsBuilder() {
        return getArgsFieldBuilder().addBuilder(
            com.mysql.cj.x.protobuf.PolarxDatatypes.Any.getDefaultInstance());
      }
      /**
       * <code>repeated .Polarx.Datatypes.Any args = 2;</code>
       */
      public com.mysql.cj.x.protobuf.PolarxDatatypes.Any.Builder addArgsBuilder(
          int index) {
        return getArgsFieldBuilder().addBuilder(
            index, com.mysql.cj.x.protobuf.PolarxDatatypes.Any.getDefaultInstance());
      }
      /**
       * <code>repeated .Polarx.Datatypes.Any args = 2;</code>
       */
      public java.util.List<com.mysql.cj.x.protobuf.PolarxDatatypes.Any.Builder> 
           getArgsBuilderList() {
        return getArgsFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          com.mysql.cj.x.protobuf.PolarxDatatypes.Any, com.mysql.cj.x.protobuf.PolarxDatatypes.Any.Builder, com.mysql.cj.x.protobuf.PolarxDatatypes.AnyOrBuilder> 
          getArgsFieldBuilder() {
        if (argsBuilder_ == null) {
          argsBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              com.mysql.cj.x.protobuf.PolarxDatatypes.Any, com.mysql.cj.x.protobuf.PolarxDatatypes.Any.Builder, com.mysql.cj.x.protobuf.PolarxDatatypes.AnyOrBuilder>(
                  args_,
                  ((bitField0_ & 0x00000040) != 0),
                  getParentForChildren(),
                  isClean());
          args_ = null;
        }
        return argsBuilder_;
      }

      private boolean compactMetadata_ ;
      /**
       * <code>optional bool compact_metadata = 4 [default = false];</code>
       * @return Whether the compactMetadata field is set.
       */
      public boolean hasCompactMetadata() {
        return ((bitField0_ & 0x00000080) != 0);
      }
      /**
       * <code>optional bool compact_metadata = 4 [default = false];</code>
       * @return The compactMetadata.
       */
      public boolean getCompactMetadata() {
        return compactMetadata_;
      }
      /**
       * <code>optional bool compact_metadata = 4 [default = false];</code>
       * @param value The compactMetadata to set.
       * @return This builder for chaining.
       */
      public Builder setCompactMetadata(boolean value) {
        bitField0_ |= 0x00000080;
        compactMetadata_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional bool compact_metadata = 4 [default = false];</code>
       * @return This builder for chaining.
       */
      public Builder clearCompactMetadata() {
        bitField0_ = (bitField0_ & ~0x00000080);
        compactMetadata_ = false;
        onChanged();
        return this;
      }

      private java.lang.Object schemaName_ = "";
      /**
       * <pre>
       * For auto commit request.
       * </pre>
       *
       * <code>optional string schema_name = 5;</code>
       * @return Whether the schemaName field is set.
       */
      public boolean hasSchemaName() {
        return ((bitField0_ & 0x00000100) != 0);
      }
      /**
       * <pre>
       * For auto commit request.
       * </pre>
       *
       * <code>optional string schema_name = 5;</code>
       * @return The schemaName.
       */
      public java.lang.String getSchemaName() {
        java.lang.Object ref = schemaName_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            schemaName_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <pre>
       * For auto commit request.
       * </pre>
       *
       * <code>optional string schema_name = 5;</code>
       * @return The bytes for schemaName.
       */
      public com.google.protobuf.ByteString
          getSchemaNameBytes() {
        java.lang.Object ref = schemaName_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          schemaName_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       * For auto commit request.
       * </pre>
       *
       * <code>optional string schema_name = 5;</code>
       * @param value The schemaName to set.
       * @return This builder for chaining.
       */
      public Builder setSchemaName(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000100;
        schemaName_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * For auto commit request.
       * </pre>
       *
       * <code>optional string schema_name = 5;</code>
       * @return This builder for chaining.
       */
      public Builder clearSchemaName() {
        bitField0_ = (bitField0_ & ~0x00000100);
        schemaName_ = getDefaultInstance().getSchemaName();
        onChanged();
        return this;
      }
      /**
       * <pre>
       * For auto commit request.
       * </pre>
       *
       * <code>optional string schema_name = 5;</code>
       * @param value The bytes for schemaName to set.
       * @return This builder for chaining.
       */
      public Builder setSchemaNameBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000100;
        schemaName_ = value;
        onChanged();
        return this;
      }

      private java.util.List<com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable> sessionVariables_ =
        java.util.Collections.emptyList();
      private void ensureSessionVariablesIsMutable() {
        if (!((bitField0_ & 0x00000200) != 0)) {
          sessionVariables_ = new java.util.ArrayList<com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable>(sessionVariables_);
          bitField0_ |= 0x00000200;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable, com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable.Builder, com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariableOrBuilder> sessionVariablesBuilder_;

      /**
       * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 6;</code>
       */
      public java.util.List<com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable> getSessionVariablesList() {
        if (sessionVariablesBuilder_ == null) {
          return java.util.Collections.unmodifiableList(sessionVariables_);
        } else {
          return sessionVariablesBuilder_.getMessageList();
        }
      }
      /**
       * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 6;</code>
       */
      public int getSessionVariablesCount() {
        if (sessionVariablesBuilder_ == null) {
          return sessionVariables_.size();
        } else {
          return sessionVariablesBuilder_.getCount();
        }
      }
      /**
       * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 6;</code>
       */
      public com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable getSessionVariables(int index) {
        if (sessionVariablesBuilder_ == null) {
          return sessionVariables_.get(index);
        } else {
          return sessionVariablesBuilder_.getMessage(index);
        }
      }
      /**
       * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 6;</code>
       */
      public Builder setSessionVariables(
          int index, com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable value) {
        if (sessionVariablesBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureSessionVariablesIsMutable();
          sessionVariables_.set(index, value);
          onChanged();
        } else {
          sessionVariablesBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 6;</code>
       */
      public Builder setSessionVariables(
          int index, com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable.Builder builderForValue) {
        if (sessionVariablesBuilder_ == null) {
          ensureSessionVariablesIsMutable();
          sessionVariables_.set(index, builderForValue.build());
          onChanged();
        } else {
          sessionVariablesBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 6;</code>
       */
      public Builder addSessionVariables(com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable value) {
        if (sessionVariablesBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureSessionVariablesIsMutable();
          sessionVariables_.add(value);
          onChanged();
        } else {
          sessionVariablesBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 6;</code>
       */
      public Builder addSessionVariables(
          int index, com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable value) {
        if (sessionVariablesBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureSessionVariablesIsMutable();
          sessionVariables_.add(index, value);
          onChanged();
        } else {
          sessionVariablesBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 6;</code>
       */
      public Builder addSessionVariables(
          com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable.Builder builderForValue) {
        if (sessionVariablesBuilder_ == null) {
          ensureSessionVariablesIsMutable();
          sessionVariables_.add(builderForValue.build());
          onChanged();
        } else {
          sessionVariablesBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 6;</code>
       */
      public Builder addSessionVariables(
          int index, com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable.Builder builderForValue) {
        if (sessionVariablesBuilder_ == null) {
          ensureSessionVariablesIsMutable();
          sessionVariables_.add(index, builderForValue.build());
          onChanged();
        } else {
          sessionVariablesBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 6;</code>
       */
      public Builder addAllSessionVariables(
          java.lang.Iterable<? extends com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable> values) {
        if (sessionVariablesBuilder_ == null) {
          ensureSessionVariablesIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, sessionVariables_);
          onChanged();
        } else {
          sessionVariablesBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 6;</code>
       */
      public Builder clearSessionVariables() {
        if (sessionVariablesBuilder_ == null) {
          sessionVariables_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000200);
          onChanged();
        } else {
          sessionVariablesBuilder_.clear();
        }
        return this;
      }
      /**
       * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 6;</code>
       */
      public Builder removeSessionVariables(int index) {
        if (sessionVariablesBuilder_ == null) {
          ensureSessionVariablesIsMutable();
          sessionVariables_.remove(index);
          onChanged();
        } else {
          sessionVariablesBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 6;</code>
       */
      public com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable.Builder getSessionVariablesBuilder(
          int index) {
        return getSessionVariablesFieldBuilder().getBuilder(index);
      }
      /**
       * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 6;</code>
       */
      public com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariableOrBuilder getSessionVariablesOrBuilder(
          int index) {
        if (sessionVariablesBuilder_ == null) {
          return sessionVariables_.get(index);  } else {
          return sessionVariablesBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 6;</code>
       */
      public java.util.List<? extends com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariableOrBuilder> 
           getSessionVariablesOrBuilderList() {
        if (sessionVariablesBuilder_ != null) {
          return sessionVariablesBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(sessionVariables_);
        }
      }
      /**
       * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 6;</code>
       */
      public com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable.Builder addSessionVariablesBuilder() {
        return getSessionVariablesFieldBuilder().addBuilder(
            com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable.getDefaultInstance());
      }
      /**
       * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 6;</code>
       */
      public com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable.Builder addSessionVariablesBuilder(
          int index) {
        return getSessionVariablesFieldBuilder().addBuilder(
            index, com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable.getDefaultInstance());
      }
      /**
       * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 6;</code>
       */
      public java.util.List<com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable.Builder> 
           getSessionVariablesBuilderList() {
        return getSessionVariablesFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable, com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable.Builder, com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariableOrBuilder> 
          getSessionVariablesFieldBuilder() {
        if (sessionVariablesBuilder_ == null) {
          sessionVariablesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable, com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable.Builder, com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariableOrBuilder>(
                  sessionVariables_,
                  ((bitField0_ & 0x00000200) != 0),
                  getParentForChildren(),
                  isClean());
          sessionVariables_ = null;
        }
        return sessionVariablesBuilder_;
      }

      private java.lang.Object encoding_ = "";
      /**
       * <code>optional string encoding = 7;</code>
       * @return Whether the encoding field is set.
       */
      public boolean hasEncoding() {
        return ((bitField0_ & 0x00000400) != 0);
      }
      /**
       * <code>optional string encoding = 7;</code>
       * @return The encoding.
       */
      public java.lang.String getEncoding() {
        java.lang.Object ref = encoding_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            encoding_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>optional string encoding = 7;</code>
       * @return The bytes for encoding.
       */
      public com.google.protobuf.ByteString
          getEncodingBytes() {
        java.lang.Object ref = encoding_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          encoding_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>optional string encoding = 7;</code>
       * @param value The encoding to set.
       * @return This builder for chaining.
       */
      public Builder setEncoding(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000400;
        encoding_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional string encoding = 7;</code>
       * @return This builder for chaining.
       */
      public Builder clearEncoding() {
        bitField0_ = (bitField0_ & ~0x00000400);
        encoding_ = getDefaultInstance().getEncoding();
        onChanged();
        return this;
      }
      /**
       * <code>optional string encoding = 7;</code>
       * @param value The bytes for encoding to set.
       * @return This builder for chaining.
       */
      public Builder setEncodingBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000400;
        encoding_ = value;
        onChanged();
        return this;
      }

      private int token_ ;
      /**
       * <code>optional int32 token = 8;</code>
       * @return Whether the token field is set.
       */
      public boolean hasToken() {
        return ((bitField0_ & 0x00000800) != 0);
      }
      /**
       * <code>optional int32 token = 8;</code>
       * @return The token.
       */
      public int getToken() {
        return token_;
      }
      /**
       * <code>optional int32 token = 8;</code>
       * @param value The token to set.
       * @return This builder for chaining.
       */
      public Builder setToken(int value) {
        bitField0_ |= 0x00000800;
        token_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional int32 token = 8;</code>
       * @return This builder for chaining.
       */
      public Builder clearToken() {
        bitField0_ = (bitField0_ & ~0x00000800);
        token_ = 0;
        onChanged();
        return this;
      }

      private boolean resetError_ ;
      /**
       * <code>optional bool reset_error = 9;</code>
       * @return Whether the resetError field is set.
       */
      public boolean hasResetError() {
        return ((bitField0_ & 0x00001000) != 0);
      }
      /**
       * <code>optional bool reset_error = 9;</code>
       * @return The resetError.
       */
      public boolean getResetError() {
        return resetError_;
      }
      /**
       * <code>optional bool reset_error = 9;</code>
       * @param value The resetError to set.
       * @return This builder for chaining.
       */
      public Builder setResetError(boolean value) {
        bitField0_ |= 0x00001000;
        resetError_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional bool reset_error = 9;</code>
       * @return This builder for chaining.
       */
      public Builder clearResetError() {
        bitField0_ = (bitField0_ & ~0x00001000);
        resetError_ = false;
        onChanged();
        return this;
      }

      private long snapshotSeq_ ;
      /**
       * <code>optional uint64 snapshot_seq = 10;</code>
       * @return Whether the snapshotSeq field is set.
       */
      public boolean hasSnapshotSeq() {
        return ((bitField0_ & 0x00002000) != 0);
      }
      /**
       * <code>optional uint64 snapshot_seq = 10;</code>
       * @return The snapshotSeq.
       */
      public long getSnapshotSeq() {
        return snapshotSeq_;
      }
      /**
       * <code>optional uint64 snapshot_seq = 10;</code>
       * @param value The snapshotSeq to set.
       * @return This builder for chaining.
       */
      public Builder setSnapshotSeq(long value) {
        bitField0_ |= 0x00002000;
        snapshotSeq_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional uint64 snapshot_seq = 10;</code>
       * @return This builder for chaining.
       */
      public Builder clearSnapshotSeq() {
        bitField0_ = (bitField0_ & ~0x00002000);
        snapshotSeq_ = 0L;
        onChanged();
        return this;
      }

      private long commitSeq_ ;
      /**
       * <code>optional uint64 commit_seq = 11;</code>
       * @return Whether the commitSeq field is set.
       */
      public boolean hasCommitSeq() {
        return ((bitField0_ & 0x00004000) != 0);
      }
      /**
       * <code>optional uint64 commit_seq = 11;</code>
       * @return The commitSeq.
       */
      public long getCommitSeq() {
        return commitSeq_;
      }
      /**
       * <code>optional uint64 commit_seq = 11;</code>
       * @param value The commitSeq to set.
       * @return This builder for chaining.
       */
      public Builder setCommitSeq(long value) {
        bitField0_ |= 0x00004000;
        commitSeq_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional uint64 commit_seq = 11;</code>
       * @return This builder for chaining.
       */
      public Builder clearCommitSeq() {
        bitField0_ = (bitField0_ & ~0x00004000);
        commitSeq_ = 0L;
        onChanged();
        return this;
      }

      private boolean useCtsTransaction_ ;
      /**
       * <code>optional bool use_cts_transaction = 15;</code>
       * @return Whether the useCtsTransaction field is set.
       */
      public boolean hasUseCtsTransaction() {
        return ((bitField0_ & 0x00008000) != 0);
      }
      /**
       * <code>optional bool use_cts_transaction = 15;</code>
       * @return The useCtsTransaction.
       */
      public boolean getUseCtsTransaction() {
        return useCtsTransaction_;
      }
      /**
       * <code>optional bool use_cts_transaction = 15;</code>
       * @param value The useCtsTransaction to set.
       * @return This builder for chaining.
       */
      public Builder setUseCtsTransaction(boolean value) {
        bitField0_ |= 0x00008000;
        useCtsTransaction_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional bool use_cts_transaction = 15;</code>
       * @return This builder for chaining.
       */
      public Builder clearUseCtsTransaction() {
        bitField0_ = (bitField0_ & ~0x00008000);
        useCtsTransaction_ = false;
        onChanged();
        return this;
      }

      private long capabilities_ ;
      /**
       * <pre>
       * capabilities
       * </pre>
       *
       * <code>optional uint64 capabilities = 17;</code>
       * @return Whether the capabilities field is set.
       */
      public boolean hasCapabilities() {
        return ((bitField0_ & 0x00010000) != 0);
      }
      /**
       * <pre>
       * capabilities
       * </pre>
       *
       * <code>optional uint64 capabilities = 17;</code>
       * @return The capabilities.
       */
      public long getCapabilities() {
        return capabilities_;
      }
      /**
       * <pre>
       * capabilities
       * </pre>
       *
       * <code>optional uint64 capabilities = 17;</code>
       * @param value The capabilities to set.
       * @return This builder for chaining.
       */
      public Builder setCapabilities(long value) {
        bitField0_ |= 0x00010000;
        capabilities_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * capabilities
       * </pre>
       *
       * <code>optional uint64 capabilities = 17;</code>
       * @return This builder for chaining.
       */
      public Builder clearCapabilities() {
        bitField0_ = (bitField0_ & ~0x00010000);
        capabilities_ = 0L;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:Polarx.Sql.StmtExecute)
    }

    // @@protoc_insertion_point(class_scope:Polarx.Sql.StmtExecute)
    private static final com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecute DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecute();
    }

    public static com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecute getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    @java.lang.Deprecated public static final com.google.protobuf.Parser<StmtExecute>
        PARSER = new com.google.protobuf.AbstractParser<StmtExecute>() {
      @java.lang.Override
      public StmtExecute parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new StmtExecute(input, extensionRegistry);
      }
    };

    public static com.google.protobuf.Parser<StmtExecute> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<StmtExecute> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecute getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface GalaxyPrepareTableDataOrBuilder extends
      // @@protoc_insertion_point(interface_extends:Polarx.Sql.GalaxyPrepareTableData)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <code>required int32 table_index = 1;</code>
     * @return Whether the tableIndex field is set.
     */
    boolean hasTableIndex();
    /**
     * <code>required int32 table_index = 1;</code>
     * @return The tableIndex.
     */
    int getTableIndex();

    /**
     * <code>optional bytes db_name = 2;</code>
     * @return Whether the dbName field is set.
     */
    boolean hasDbName();
    /**
     * <code>optional bytes db_name = 2;</code>
     * @return The dbName.
     */
    com.google.protobuf.ByteString getDbName();

    /**
     * <code>required bytes table_name = 3;</code>
     * @return Whether the tableName field is set.
     */
    boolean hasTableName();
    /**
     * <code>required bytes table_name = 3;</code>
     * @return The tableName.
     */
    com.google.protobuf.ByteString getTableName();
  }
  /**
   * Protobuf type {@code Polarx.Sql.GalaxyPrepareTableData}
   */
  public  static final class GalaxyPrepareTableData extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:Polarx.Sql.GalaxyPrepareTableData)
      GalaxyPrepareTableDataOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use GalaxyPrepareTableData.newBuilder() to construct.
    private GalaxyPrepareTableData(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private GalaxyPrepareTableData() {
      dbName_ = com.google.protobuf.ByteString.EMPTY;
      tableName_ = com.google.protobuf.ByteString.EMPTY;
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new GalaxyPrepareTableData();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private GalaxyPrepareTableData(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 8: {
              bitField0_ |= 0x00000001;
              tableIndex_ = input.readInt32();
              break;
            }
            case 18: {
              bitField0_ |= 0x00000002;
              dbName_ = input.readBytes();
              break;
            }
            case 26: {
              bitField0_ |= 0x00000004;
              tableName_ = input.readBytes();
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return com.mysql.cj.polarx.protobuf.PolarxSql.internal_static_Polarx_Sql_GalaxyPrepareTableData_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return com.mysql.cj.polarx.protobuf.PolarxSql.internal_static_Polarx_Sql_GalaxyPrepareTableData_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData.class, com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData.Builder.class);
    }

    private int bitField0_;
    public static final int TABLE_INDEX_FIELD_NUMBER = 1;
    private int tableIndex_;
    /**
     * <code>required int32 table_index = 1;</code>
     * @return Whether the tableIndex field is set.
     */
    public boolean hasTableIndex() {
      return ((bitField0_ & 0x00000001) != 0);
    }
    /**
     * <code>required int32 table_index = 1;</code>
     * @return The tableIndex.
     */
    public int getTableIndex() {
      return tableIndex_;
    }

    public static final int DB_NAME_FIELD_NUMBER = 2;
    private com.google.protobuf.ByteString dbName_;
    /**
     * <code>optional bytes db_name = 2;</code>
     * @return Whether the dbName field is set.
     */
    public boolean hasDbName() {
      return ((bitField0_ & 0x00000002) != 0);
    }
    /**
     * <code>optional bytes db_name = 2;</code>
     * @return The dbName.
     */
    public com.google.protobuf.ByteString getDbName() {
      return dbName_;
    }

    public static final int TABLE_NAME_FIELD_NUMBER = 3;
    private com.google.protobuf.ByteString tableName_;
    /**
     * <code>required bytes table_name = 3;</code>
     * @return Whether the tableName field is set.
     */
    public boolean hasTableName() {
      return ((bitField0_ & 0x00000004) != 0);
    }
    /**
     * <code>required bytes table_name = 3;</code>
     * @return The tableName.
     */
    public com.google.protobuf.ByteString getTableName() {
      return tableName_;
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      if (!hasTableIndex()) {
        memoizedIsInitialized = 0;
        return false;
      }
      if (!hasTableName()) {
        memoizedIsInitialized = 0;
        return false;
      }
      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (((bitField0_ & 0x00000001) != 0)) {
        output.writeInt32(1, tableIndex_);
      }
      if (((bitField0_ & 0x00000002) != 0)) {
        output.writeBytes(2, dbName_);
      }
      if (((bitField0_ & 0x00000004) != 0)) {
        output.writeBytes(3, tableName_);
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (((bitField0_ & 0x00000001) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(1, tableIndex_);
      }
      if (((bitField0_ & 0x00000002) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(2, dbName_);
      }
      if (((bitField0_ & 0x00000004) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(3, tableName_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData)) {
        return super.equals(obj);
      }
      com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData other = (com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData) obj;

      if (hasTableIndex() != other.hasTableIndex()) return false;
      if (hasTableIndex()) {
        if (getTableIndex()
            != other.getTableIndex()) return false;
      }
      if (hasDbName() != other.hasDbName()) return false;
      if (hasDbName()) {
        if (!getDbName()
            .equals(other.getDbName())) return false;
      }
      if (hasTableName() != other.hasTableName()) return false;
      if (hasTableName()) {
        if (!getTableName()
            .equals(other.getTableName())) return false;
      }
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (hasTableIndex()) {
        hash = (37 * hash) + TABLE_INDEX_FIELD_NUMBER;
        hash = (53 * hash) + getTableIndex();
      }
      if (hasDbName()) {
        hash = (37 * hash) + DB_NAME_FIELD_NUMBER;
        hash = (53 * hash) + getDbName().hashCode();
      }
      if (hasTableName()) {
        hash = (37 * hash) + TABLE_NAME_FIELD_NUMBER;
        hash = (53 * hash) + getTableName().hashCode();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code Polarx.Sql.GalaxyPrepareTableData}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:Polarx.Sql.GalaxyPrepareTableData)
        com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableDataOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.mysql.cj.polarx.protobuf.PolarxSql.internal_static_Polarx_Sql_GalaxyPrepareTableData_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.mysql.cj.polarx.protobuf.PolarxSql.internal_static_Polarx_Sql_GalaxyPrepareTableData_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData.class, com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData.Builder.class);
      }

      // Construct using com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        tableIndex_ = 0;
        bitField0_ = (bitField0_ & ~0x00000001);
        dbName_ = com.google.protobuf.ByteString.EMPTY;
        bitField0_ = (bitField0_ & ~0x00000002);
        tableName_ = com.google.protobuf.ByteString.EMPTY;
        bitField0_ = (bitField0_ & ~0x00000004);
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return com.mysql.cj.polarx.protobuf.PolarxSql.internal_static_Polarx_Sql_GalaxyPrepareTableData_descriptor;
      }

      @java.lang.Override
      public com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData getDefaultInstanceForType() {
        return com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData.getDefaultInstance();
      }

      @java.lang.Override
      public com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData build() {
        com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData buildPartial() {
        com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData result = new com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData(this);
        int from_bitField0_ = bitField0_;
        int to_bitField0_ = 0;
        if (((from_bitField0_ & 0x00000001) != 0)) {
          result.tableIndex_ = tableIndex_;
          to_bitField0_ |= 0x00000001;
        }
        if (((from_bitField0_ & 0x00000002) != 0)) {
          to_bitField0_ |= 0x00000002;
        }
        result.dbName_ = dbName_;
        if (((from_bitField0_ & 0x00000004) != 0)) {
          to_bitField0_ |= 0x00000004;
        }
        result.tableName_ = tableName_;
        result.bitField0_ = to_bitField0_;
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData) {
          return mergeFrom((com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData other) {
        if (other == com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData.getDefaultInstance()) return this;
        if (other.hasTableIndex()) {
          setTableIndex(other.getTableIndex());
        }
        if (other.hasDbName()) {
          setDbName(other.getDbName());
        }
        if (other.hasTableName()) {
          setTableName(other.getTableName());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        if (!hasTableIndex()) {
          return false;
        }
        if (!hasTableName()) {
          return false;
        }
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private int tableIndex_ ;
      /**
       * <code>required int32 table_index = 1;</code>
       * @return Whether the tableIndex field is set.
       */
      public boolean hasTableIndex() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>required int32 table_index = 1;</code>
       * @return The tableIndex.
       */
      public int getTableIndex() {
        return tableIndex_;
      }
      /**
       * <code>required int32 table_index = 1;</code>
       * @param value The tableIndex to set.
       * @return This builder for chaining.
       */
      public Builder setTableIndex(int value) {
        bitField0_ |= 0x00000001;
        tableIndex_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>required int32 table_index = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearTableIndex() {
        bitField0_ = (bitField0_ & ~0x00000001);
        tableIndex_ = 0;
        onChanged();
        return this;
      }

      private com.google.protobuf.ByteString dbName_ = com.google.protobuf.ByteString.EMPTY;
      /**
       * <code>optional bytes db_name = 2;</code>
       * @return Whether the dbName field is set.
       */
      public boolean hasDbName() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>optional bytes db_name = 2;</code>
       * @return The dbName.
       */
      public com.google.protobuf.ByteString getDbName() {
        return dbName_;
      }
      /**
       * <code>optional bytes db_name = 2;</code>
       * @param value The dbName to set.
       * @return This builder for chaining.
       */
      public Builder setDbName(com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000002;
        dbName_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional bytes db_name = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearDbName() {
        bitField0_ = (bitField0_ & ~0x00000002);
        dbName_ = getDefaultInstance().getDbName();
        onChanged();
        return this;
      }

      private com.google.protobuf.ByteString tableName_ = com.google.protobuf.ByteString.EMPTY;
      /**
       * <code>required bytes table_name = 3;</code>
       * @return Whether the tableName field is set.
       */
      public boolean hasTableName() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <code>required bytes table_name = 3;</code>
       * @return The tableName.
       */
      public com.google.protobuf.ByteString getTableName() {
        return tableName_;
      }
      /**
       * <code>required bytes table_name = 3;</code>
       * @param value The tableName to set.
       * @return This builder for chaining.
       */
      public Builder setTableName(com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000004;
        tableName_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>required bytes table_name = 3;</code>
       * @return This builder for chaining.
       */
      public Builder clearTableName() {
        bitField0_ = (bitField0_ & ~0x00000004);
        tableName_ = getDefaultInstance().getTableName();
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:Polarx.Sql.GalaxyPrepareTableData)
    }

    // @@protoc_insertion_point(class_scope:Polarx.Sql.GalaxyPrepareTableData)
    private static final com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData();
    }

    public static com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    @java.lang.Deprecated public static final com.google.protobuf.Parser<GalaxyPrepareTableData>
        PARSER = new com.google.protobuf.AbstractParser<GalaxyPrepareTableData>() {
      @java.lang.Override
      public GalaxyPrepareTableData parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new GalaxyPrepareTableData(input, extensionRegistry);
      }
    };

    public static com.google.protobuf.Parser<GalaxyPrepareTableData> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<GalaxyPrepareTableData> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface GalaxyPrepareExecuteOrBuilder extends
      // @@protoc_insertion_point(interface_extends:Polarx.Sql.GalaxyPrepareExecute)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <code>optional bytes stmt = 1;</code>
     * @return Whether the stmt field is set.
     */
    boolean hasStmt();
    /**
     * <code>optional bytes stmt = 1;</code>
     * @return The stmt.
     */
    com.google.protobuf.ByteString getStmt();

    /**
     * <code>optional bytes stmt_digest = 2;</code>
     * @return Whether the stmtDigest field is set.
     */
    boolean hasStmtDigest();
    /**
     * <code>optional bytes stmt_digest = 2;</code>
     * @return The stmtDigest.
     */
    com.google.protobuf.ByteString getStmtDigest();

    /**
     * <code>optional bytes hint = 3;</code>
     * @return Whether the hint field is set.
     */
    boolean hasHint();
    /**
     * <code>optional bytes hint = 3;</code>
     * @return The hint.
     */
    com.google.protobuf.ByteString getHint();

    /**
     * <code>repeated .Polarx.Sql.GalaxyPrepareTableData tables = 4;</code>
     */
    java.util.List<com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData> 
        getTablesList();
    /**
     * <code>repeated .Polarx.Sql.GalaxyPrepareTableData tables = 4;</code>
     */
    com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData getTables(int index);
    /**
     * <code>repeated .Polarx.Sql.GalaxyPrepareTableData tables = 4;</code>
     */
    int getTablesCount();
    /**
     * <code>repeated .Polarx.Sql.GalaxyPrepareTableData tables = 4;</code>
     */
    java.util.List<? extends com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableDataOrBuilder> 
        getTablesOrBuilderList();
    /**
     * <code>repeated .Polarx.Sql.GalaxyPrepareTableData tables = 4;</code>
     */
    com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableDataOrBuilder getTablesOrBuilder(
        int index);

    /**
     * <pre>
     * Encoded param without table names.
     * </pre>
     *
     * <code>optional bytes param = 5;</code>
     * @return Whether the param field is set.
     */
    boolean hasParam();
    /**
     * <pre>
     * Encoded param without table names.
     * </pre>
     *
     * <code>optional bytes param = 5;</code>
     * @return The param.
     */
    com.google.protobuf.ByteString getParam();

    /**
     * <pre>
     * for mysql 5.7
     * </pre>
     *
     * <code>optional int32 param_num = 17;</code>
     * @return Whether the paramNum field is set.
     */
    boolean hasParamNum();
    /**
     * <pre>
     * for mysql 5.7
     * </pre>
     *
     * <code>optional int32 param_num = 17;</code>
     * @return The paramNum.
     */
    int getParamNum();

    /**
     * <code>optional bool compact_metadata = 6 [default = false];</code>
     * @return Whether the compactMetadata field is set.
     */
    boolean hasCompactMetadata();
    /**
     * <code>optional bool compact_metadata = 6 [default = false];</code>
     * @return The compactMetadata.
     */
    boolean getCompactMetadata();

    /**
     * <pre>
     * Extra info.
     * </pre>
     *
     * <code>optional string db_name = 7;</code>
     * @return Whether the dbName field is set.
     */
    boolean hasDbName();
    /**
     * <pre>
     * Extra info.
     * </pre>
     *
     * <code>optional string db_name = 7;</code>
     * @return The dbName.
     */
    java.lang.String getDbName();
    /**
     * <pre>
     * Extra info.
     * </pre>
     *
     * <code>optional string db_name = 7;</code>
     * @return The bytes for dbName.
     */
    com.google.protobuf.ByteString
        getDbNameBytes();

    /**
     * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 8;</code>
     */
    java.util.List<com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable> 
        getSessionVariablesList();
    /**
     * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 8;</code>
     */
    com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable getSessionVariables(int index);
    /**
     * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 8;</code>
     */
    int getSessionVariablesCount();
    /**
     * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 8;</code>
     */
    java.util.List<? extends com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariableOrBuilder> 
        getSessionVariablesOrBuilderList();
    /**
     * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 8;</code>
     */
    com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariableOrBuilder getSessionVariablesOrBuilder(
        int index);

    /**
     * <code>optional string encoding = 9;</code>
     * @return Whether the encoding field is set.
     */
    boolean hasEncoding();
    /**
     * <code>optional string encoding = 9;</code>
     * @return The encoding.
     */
    java.lang.String getEncoding();
    /**
     * <code>optional string encoding = 9;</code>
     * @return The bytes for encoding.
     */
    com.google.protobuf.ByteString
        getEncodingBytes();

    /**
     * <code>optional int32 token = 10;</code>
     * @return Whether the token field is set.
     */
    boolean hasToken();
    /**
     * <code>optional int32 token = 10;</code>
     * @return The token.
     */
    int getToken();

    /**
     * <code>optional bool reset_error = 11;</code>
     * @return Whether the resetError field is set.
     */
    boolean hasResetError();
    /**
     * <code>optional bool reset_error = 11;</code>
     * @return The resetError.
     */
    boolean getResetError();

    /**
     * <pre>
     * Trx.
     * </pre>
     *
     * <code>optional uint64 snapshot_seq = 12;</code>
     * @return Whether the snapshotSeq field is set.
     */
    boolean hasSnapshotSeq();
    /**
     * <pre>
     * Trx.
     * </pre>
     *
     * <code>optional uint64 snapshot_seq = 12;</code>
     * @return The snapshotSeq.
     */
    long getSnapshotSeq();

    /**
     * <code>optional uint64 commit_seq = 13;</code>
     * @return Whether the commitSeq field is set.
     */
    boolean hasCommitSeq();
    /**
     * <code>optional uint64 commit_seq = 13;</code>
     * @return The commitSeq.
     */
    long getCommitSeq();

    /**
     * <code>optional bool use_cts_transaction = 14;</code>
     * @return Whether the useCtsTransaction field is set.
     */
    boolean hasUseCtsTransaction();
    /**
     * <code>optional bool use_cts_transaction = 14;</code>
     * @return The useCtsTransaction.
     */
    boolean getUseCtsTransaction();

    /**
     * <code>optional .Polarx.Sql.GalaxyPrepareExecute.ResultSetType result_set_type = 15 [default = ROW];</code>
     * @return Whether the resultSetType field is set.
     */
    boolean hasResultSetType();
    /**
     * <code>optional .Polarx.Sql.GalaxyPrepareExecute.ResultSetType result_set_type = 15 [default = ROW];</code>
     * @return The resultSetType.
     */
    com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute.ResultSetType getResultSetType();

    /**
     * <code>optional bool feed_back = 16 [default = false];</code>
     * @return Whether the feedBack field is set.
     */
    boolean hasFeedBack();
    /**
     * <code>optional bool feed_back = 16 [default = false];</code>
     * @return The feedBack.
     */
    boolean getFeedBack();

    /**
     * <pre>
     * capabilities
     * </pre>
     *
     * <code>optional uint64 capabilities = 18;</code>
     * @return Whether the capabilities field is set.
     */
    boolean hasCapabilities();
    /**
     * <pre>
     * capabilities
     * </pre>
     *
     * <code>optional uint64 capabilities = 18;</code>
     * @return The capabilities.
     */
    long getCapabilities();
  }
  /**
   * Protobuf type {@code Polarx.Sql.GalaxyPrepareExecute}
   */
  public  static final class GalaxyPrepareExecute extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:Polarx.Sql.GalaxyPrepareExecute)
      GalaxyPrepareExecuteOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use GalaxyPrepareExecute.newBuilder() to construct.
    private GalaxyPrepareExecute(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private GalaxyPrepareExecute() {
      stmt_ = com.google.protobuf.ByteString.EMPTY;
      stmtDigest_ = com.google.protobuf.ByteString.EMPTY;
      hint_ = com.google.protobuf.ByteString.EMPTY;
      tables_ = java.util.Collections.emptyList();
      param_ = com.google.protobuf.ByteString.EMPTY;
      dbName_ = "";
      sessionVariables_ = java.util.Collections.emptyList();
      encoding_ = "";
      resultSetType_ = 1;
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new GalaxyPrepareExecute();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private GalaxyPrepareExecute(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 10: {
              bitField0_ |= 0x00000001;
              stmt_ = input.readBytes();
              break;
            }
            case 18: {
              bitField0_ |= 0x00000002;
              stmtDigest_ = input.readBytes();
              break;
            }
            case 26: {
              bitField0_ |= 0x00000004;
              hint_ = input.readBytes();
              break;
            }
            case 34: {
              if (!((mutable_bitField0_ & 0x00000008) != 0)) {
                tables_ = new java.util.ArrayList<com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData>();
                mutable_bitField0_ |= 0x00000008;
              }
              tables_.add(
                  input.readMessage(com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData.PARSER, extensionRegistry));
              break;
            }
            case 42: {
              bitField0_ |= 0x00000008;
              param_ = input.readBytes();
              break;
            }
            case 48: {
              bitField0_ |= 0x00000020;
              compactMetadata_ = input.readBool();
              break;
            }
            case 58: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00000040;
              dbName_ = bs;
              break;
            }
            case 66: {
              if (!((mutable_bitField0_ & 0x00000100) != 0)) {
                sessionVariables_ = new java.util.ArrayList<com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable>();
                mutable_bitField0_ |= 0x00000100;
              }
              sessionVariables_.add(
                  input.readMessage(com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable.PARSER, extensionRegistry));
              break;
            }
            case 74: {
              com.google.protobuf.ByteString bs = input.readBytes();
              bitField0_ |= 0x00000080;
              encoding_ = bs;
              break;
            }
            case 80: {
              bitField0_ |= 0x00000100;
              token_ = input.readInt32();
              break;
            }
            case 88: {
              bitField0_ |= 0x00000200;
              resetError_ = input.readBool();
              break;
            }
            case 96: {
              bitField0_ |= 0x00000400;
              snapshotSeq_ = input.readUInt64();
              break;
            }
            case 104: {
              bitField0_ |= 0x00000800;
              commitSeq_ = input.readUInt64();
              break;
            }
            case 112: {
              bitField0_ |= 0x00001000;
              useCtsTransaction_ = input.readBool();
              break;
            }
            case 120: {
              int rawValue = input.readEnum();
                @SuppressWarnings("deprecation")
              com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute.ResultSetType value = com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute.ResultSetType.valueOf(rawValue);
              if (value == null) {
                unknownFields.mergeVarintField(15, rawValue);
              } else {
                bitField0_ |= 0x00002000;
                resultSetType_ = rawValue;
              }
              break;
            }
            case 128: {
              bitField0_ |= 0x00004000;
              feedBack_ = input.readBool();
              break;
            }
            case 136: {
              bitField0_ |= 0x00000010;
              paramNum_ = input.readInt32();
              break;
            }
            case 144: {
              bitField0_ |= 0x00008000;
              capabilities_ = input.readUInt64();
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        if (((mutable_bitField0_ & 0x00000008) != 0)) {
          tables_ = java.util.Collections.unmodifiableList(tables_);
        }
        if (((mutable_bitField0_ & 0x00000100) != 0)) {
          sessionVariables_ = java.util.Collections.unmodifiableList(sessionVariables_);
        }
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return com.mysql.cj.polarx.protobuf.PolarxSql.internal_static_Polarx_Sql_GalaxyPrepareExecute_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return com.mysql.cj.polarx.protobuf.PolarxSql.internal_static_Polarx_Sql_GalaxyPrepareExecute_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute.class, com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute.Builder.class);
    }

    /**
     * <pre>
     * Result set extra.
     * </pre>
     *
     * Protobuf enum {@code Polarx.Sql.GalaxyPrepareExecute.ResultSetType}
     */
    public enum ResultSetType
        implements com.google.protobuf.ProtocolMessageEnum {
      /**
       * <code>ROW = 1;</code>
       */
      ROW(1),
      /**
       * <code>CHUNK_V1 = 2;</code>
       */
      CHUNK_V1(2),
      ;

      /**
       * <code>ROW = 1;</code>
       */
      public static final int ROW_VALUE = 1;
      /**
       * <code>CHUNK_V1 = 2;</code>
       */
      public static final int CHUNK_V1_VALUE = 2;


      public final int getNumber() {
        return value;
      }

      /**
       * @param value The numeric wire value of the corresponding enum entry.
       * @return The enum associated with the given numeric wire value.
       * @deprecated Use {@link #forNumber(int)} instead.
       */
      @java.lang.Deprecated
      public static ResultSetType valueOf(int value) {
        return forNumber(value);
      }

      /**
       * @param value The numeric wire value of the corresponding enum entry.
       * @return The enum associated with the given numeric wire value.
       */
      public static ResultSetType forNumber(int value) {
        switch (value) {
          case 1: return ROW;
          case 2: return CHUNK_V1;
          default: return null;
        }
      }

      public static com.google.protobuf.Internal.EnumLiteMap<ResultSetType>
          internalGetValueMap() {
        return internalValueMap;
      }
      private static final com.google.protobuf.Internal.EnumLiteMap<
          ResultSetType> internalValueMap =
            new com.google.protobuf.Internal.EnumLiteMap<ResultSetType>() {
              public ResultSetType findValueByNumber(int number) {
                return ResultSetType.forNumber(number);
              }
            };

      public final com.google.protobuf.Descriptors.EnumValueDescriptor
          getValueDescriptor() {
        return getDescriptor().getValues().get(ordinal());
      }
      public final com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptorForType() {
        return getDescriptor();
      }
      public static final com.google.protobuf.Descriptors.EnumDescriptor
          getDescriptor() {
        return com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute.getDescriptor().getEnumTypes().get(0);
      }

      private static final ResultSetType[] VALUES = values();

      public static ResultSetType valueOf(
          com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
        if (desc.getType() != getDescriptor()) {
          throw new java.lang.IllegalArgumentException(
            "EnumValueDescriptor is not for this type.");
        }
        return VALUES[desc.getIndex()];
      }

      private final int value;

      private ResultSetType(int value) {
        this.value = value;
      }

      // @@protoc_insertion_point(enum_scope:Polarx.Sql.GalaxyPrepareExecute.ResultSetType)
    }

    private int bitField0_;
    public static final int STMT_FIELD_NUMBER = 1;
    private com.google.protobuf.ByteString stmt_;
    /**
     * <code>optional bytes stmt = 1;</code>
     * @return Whether the stmt field is set.
     */
    public boolean hasStmt() {
      return ((bitField0_ & 0x00000001) != 0);
    }
    /**
     * <code>optional bytes stmt = 1;</code>
     * @return The stmt.
     */
    public com.google.protobuf.ByteString getStmt() {
      return stmt_;
    }

    public static final int STMT_DIGEST_FIELD_NUMBER = 2;
    private com.google.protobuf.ByteString stmtDigest_;
    /**
     * <code>optional bytes stmt_digest = 2;</code>
     * @return Whether the stmtDigest field is set.
     */
    public boolean hasStmtDigest() {
      return ((bitField0_ & 0x00000002) != 0);
    }
    /**
     * <code>optional bytes stmt_digest = 2;</code>
     * @return The stmtDigest.
     */
    public com.google.protobuf.ByteString getStmtDigest() {
      return stmtDigest_;
    }

    public static final int HINT_FIELD_NUMBER = 3;
    private com.google.protobuf.ByteString hint_;
    /**
     * <code>optional bytes hint = 3;</code>
     * @return Whether the hint field is set.
     */
    public boolean hasHint() {
      return ((bitField0_ & 0x00000004) != 0);
    }
    /**
     * <code>optional bytes hint = 3;</code>
     * @return The hint.
     */
    public com.google.protobuf.ByteString getHint() {
      return hint_;
    }

    public static final int TABLES_FIELD_NUMBER = 4;
    private java.util.List<com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData> tables_;
    /**
     * <code>repeated .Polarx.Sql.GalaxyPrepareTableData tables = 4;</code>
     */
    public java.util.List<com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData> getTablesList() {
      return tables_;
    }
    /**
     * <code>repeated .Polarx.Sql.GalaxyPrepareTableData tables = 4;</code>
     */
    public java.util.List<? extends com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableDataOrBuilder> 
        getTablesOrBuilderList() {
      return tables_;
    }
    /**
     * <code>repeated .Polarx.Sql.GalaxyPrepareTableData tables = 4;</code>
     */
    public int getTablesCount() {
      return tables_.size();
    }
    /**
     * <code>repeated .Polarx.Sql.GalaxyPrepareTableData tables = 4;</code>
     */
    public com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData getTables(int index) {
      return tables_.get(index);
    }
    /**
     * <code>repeated .Polarx.Sql.GalaxyPrepareTableData tables = 4;</code>
     */
    public com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableDataOrBuilder getTablesOrBuilder(
        int index) {
      return tables_.get(index);
    }

    public static final int PARAM_FIELD_NUMBER = 5;
    private com.google.protobuf.ByteString param_;
    /**
     * <pre>
     * Encoded param without table names.
     * </pre>
     *
     * <code>optional bytes param = 5;</code>
     * @return Whether the param field is set.
     */
    public boolean hasParam() {
      return ((bitField0_ & 0x00000008) != 0);
    }
    /**
     * <pre>
     * Encoded param without table names.
     * </pre>
     *
     * <code>optional bytes param = 5;</code>
     * @return The param.
     */
    public com.google.protobuf.ByteString getParam() {
      return param_;
    }

    public static final int PARAM_NUM_FIELD_NUMBER = 17;
    private int paramNum_;
    /**
     * <pre>
     * for mysql 5.7
     * </pre>
     *
     * <code>optional int32 param_num = 17;</code>
     * @return Whether the paramNum field is set.
     */
    public boolean hasParamNum() {
      return ((bitField0_ & 0x00000010) != 0);
    }
    /**
     * <pre>
     * for mysql 5.7
     * </pre>
     *
     * <code>optional int32 param_num = 17;</code>
     * @return The paramNum.
     */
    public int getParamNum() {
      return paramNum_;
    }

    public static final int COMPACT_METADATA_FIELD_NUMBER = 6;
    private boolean compactMetadata_;
    /**
     * <code>optional bool compact_metadata = 6 [default = false];</code>
     * @return Whether the compactMetadata field is set.
     */
    public boolean hasCompactMetadata() {
      return ((bitField0_ & 0x00000020) != 0);
    }
    /**
     * <code>optional bool compact_metadata = 6 [default = false];</code>
     * @return The compactMetadata.
     */
    public boolean getCompactMetadata() {
      return compactMetadata_;
    }

    public static final int DB_NAME_FIELD_NUMBER = 7;
    private volatile java.lang.Object dbName_;
    /**
     * <pre>
     * Extra info.
     * </pre>
     *
     * <code>optional string db_name = 7;</code>
     * @return Whether the dbName field is set.
     */
    public boolean hasDbName() {
      return ((bitField0_ & 0x00000040) != 0);
    }
    /**
     * <pre>
     * Extra info.
     * </pre>
     *
     * <code>optional string db_name = 7;</code>
     * @return The dbName.
     */
    public java.lang.String getDbName() {
      java.lang.Object ref = dbName_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          dbName_ = s;
        }
        return s;
      }
    }
    /**
     * <pre>
     * Extra info.
     * </pre>
     *
     * <code>optional string db_name = 7;</code>
     * @return The bytes for dbName.
     */
    public com.google.protobuf.ByteString
        getDbNameBytes() {
      java.lang.Object ref = dbName_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        dbName_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int SESSION_VARIABLES_FIELD_NUMBER = 8;
    private java.util.List<com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable> sessionVariables_;
    /**
     * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 8;</code>
     */
    public java.util.List<com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable> getSessionVariablesList() {
      return sessionVariables_;
    }
    /**
     * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 8;</code>
     */
    public java.util.List<? extends com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariableOrBuilder> 
        getSessionVariablesOrBuilderList() {
      return sessionVariables_;
    }
    /**
     * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 8;</code>
     */
    public int getSessionVariablesCount() {
      return sessionVariables_.size();
    }
    /**
     * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 8;</code>
     */
    public com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable getSessionVariables(int index) {
      return sessionVariables_.get(index);
    }
    /**
     * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 8;</code>
     */
    public com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariableOrBuilder getSessionVariablesOrBuilder(
        int index) {
      return sessionVariables_.get(index);
    }

    public static final int ENCODING_FIELD_NUMBER = 9;
    private volatile java.lang.Object encoding_;
    /**
     * <code>optional string encoding = 9;</code>
     * @return Whether the encoding field is set.
     */
    public boolean hasEncoding() {
      return ((bitField0_ & 0x00000080) != 0);
    }
    /**
     * <code>optional string encoding = 9;</code>
     * @return The encoding.
     */
    public java.lang.String getEncoding() {
      java.lang.Object ref = encoding_;
      if (ref instanceof java.lang.String) {
        return (java.lang.String) ref;
      } else {
        com.google.protobuf.ByteString bs = 
            (com.google.protobuf.ByteString) ref;
        java.lang.String s = bs.toStringUtf8();
        if (bs.isValidUtf8()) {
          encoding_ = s;
        }
        return s;
      }
    }
    /**
     * <code>optional string encoding = 9;</code>
     * @return The bytes for encoding.
     */
    public com.google.protobuf.ByteString
        getEncodingBytes() {
      java.lang.Object ref = encoding_;
      if (ref instanceof java.lang.String) {
        com.google.protobuf.ByteString b = 
            com.google.protobuf.ByteString.copyFromUtf8(
                (java.lang.String) ref);
        encoding_ = b;
        return b;
      } else {
        return (com.google.protobuf.ByteString) ref;
      }
    }

    public static final int TOKEN_FIELD_NUMBER = 10;
    private int token_;
    /**
     * <code>optional int32 token = 10;</code>
     * @return Whether the token field is set.
     */
    public boolean hasToken() {
      return ((bitField0_ & 0x00000100) != 0);
    }
    /**
     * <code>optional int32 token = 10;</code>
     * @return The token.
     */
    public int getToken() {
      return token_;
    }

    public static final int RESET_ERROR_FIELD_NUMBER = 11;
    private boolean resetError_;
    /**
     * <code>optional bool reset_error = 11;</code>
     * @return Whether the resetError field is set.
     */
    public boolean hasResetError() {
      return ((bitField0_ & 0x00000200) != 0);
    }
    /**
     * <code>optional bool reset_error = 11;</code>
     * @return The resetError.
     */
    public boolean getResetError() {
      return resetError_;
    }

    public static final int SNAPSHOT_SEQ_FIELD_NUMBER = 12;
    private long snapshotSeq_;
    /**
     * <pre>
     * Trx.
     * </pre>
     *
     * <code>optional uint64 snapshot_seq = 12;</code>
     * @return Whether the snapshotSeq field is set.
     */
    public boolean hasSnapshotSeq() {
      return ((bitField0_ & 0x00000400) != 0);
    }
    /**
     * <pre>
     * Trx.
     * </pre>
     *
     * <code>optional uint64 snapshot_seq = 12;</code>
     * @return The snapshotSeq.
     */
    public long getSnapshotSeq() {
      return snapshotSeq_;
    }

    public static final int COMMIT_SEQ_FIELD_NUMBER = 13;
    private long commitSeq_;
    /**
     * <code>optional uint64 commit_seq = 13;</code>
     * @return Whether the commitSeq field is set.
     */
    public boolean hasCommitSeq() {
      return ((bitField0_ & 0x00000800) != 0);
    }
    /**
     * <code>optional uint64 commit_seq = 13;</code>
     * @return The commitSeq.
     */
    public long getCommitSeq() {
      return commitSeq_;
    }

    public static final int USE_CTS_TRANSACTION_FIELD_NUMBER = 14;
    private boolean useCtsTransaction_;
    /**
     * <code>optional bool use_cts_transaction = 14;</code>
     * @return Whether the useCtsTransaction field is set.
     */
    public boolean hasUseCtsTransaction() {
      return ((bitField0_ & 0x00001000) != 0);
    }
    /**
     * <code>optional bool use_cts_transaction = 14;</code>
     * @return The useCtsTransaction.
     */
    public boolean getUseCtsTransaction() {
      return useCtsTransaction_;
    }

    public static final int RESULT_SET_TYPE_FIELD_NUMBER = 15;
    private int resultSetType_;
    /**
     * <code>optional .Polarx.Sql.GalaxyPrepareExecute.ResultSetType result_set_type = 15 [default = ROW];</code>
     * @return Whether the resultSetType field is set.
     */
    public boolean hasResultSetType() {
      return ((bitField0_ & 0x00002000) != 0);
    }
    /**
     * <code>optional .Polarx.Sql.GalaxyPrepareExecute.ResultSetType result_set_type = 15 [default = ROW];</code>
     * @return The resultSetType.
     */
    public com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute.ResultSetType getResultSetType() {
      @SuppressWarnings("deprecation")
      com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute.ResultSetType result = com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute.ResultSetType.valueOf(resultSetType_);
      return result == null ? com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute.ResultSetType.ROW : result;
    }

    public static final int FEED_BACK_FIELD_NUMBER = 16;
    private boolean feedBack_;
    /**
     * <code>optional bool feed_back = 16 [default = false];</code>
     * @return Whether the feedBack field is set.
     */
    public boolean hasFeedBack() {
      return ((bitField0_ & 0x00004000) != 0);
    }
    /**
     * <code>optional bool feed_back = 16 [default = false];</code>
     * @return The feedBack.
     */
    public boolean getFeedBack() {
      return feedBack_;
    }

    public static final int CAPABILITIES_FIELD_NUMBER = 18;
    private long capabilities_;
    /**
     * <pre>
     * capabilities
     * </pre>
     *
     * <code>optional uint64 capabilities = 18;</code>
     * @return Whether the capabilities field is set.
     */
    public boolean hasCapabilities() {
      return ((bitField0_ & 0x00008000) != 0);
    }
    /**
     * <pre>
     * capabilities
     * </pre>
     *
     * <code>optional uint64 capabilities = 18;</code>
     * @return The capabilities.
     */
    public long getCapabilities() {
      return capabilities_;
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      for (int i = 0; i < getTablesCount(); i++) {
        if (!getTables(i).isInitialized()) {
          memoizedIsInitialized = 0;
          return false;
        }
      }
      for (int i = 0; i < getSessionVariablesCount(); i++) {
        if (!getSessionVariables(i).isInitialized()) {
          memoizedIsInitialized = 0;
          return false;
        }
      }
      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (((bitField0_ & 0x00000001) != 0)) {
        output.writeBytes(1, stmt_);
      }
      if (((bitField0_ & 0x00000002) != 0)) {
        output.writeBytes(2, stmtDigest_);
      }
      if (((bitField0_ & 0x00000004) != 0)) {
        output.writeBytes(3, hint_);
      }
      for (int i = 0; i < tables_.size(); i++) {
        output.writeMessage(4, tables_.get(i));
      }
      if (((bitField0_ & 0x00000008) != 0)) {
        output.writeBytes(5, param_);
      }
      if (((bitField0_ & 0x00000020) != 0)) {
        output.writeBool(6, compactMetadata_);
      }
      if (((bitField0_ & 0x00000040) != 0)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 7, dbName_);
      }
      for (int i = 0; i < sessionVariables_.size(); i++) {
        output.writeMessage(8, sessionVariables_.get(i));
      }
      if (((bitField0_ & 0x00000080) != 0)) {
        com.google.protobuf.GeneratedMessageV3.writeString(output, 9, encoding_);
      }
      if (((bitField0_ & 0x00000100) != 0)) {
        output.writeInt32(10, token_);
      }
      if (((bitField0_ & 0x00000200) != 0)) {
        output.writeBool(11, resetError_);
      }
      if (((bitField0_ & 0x00000400) != 0)) {
        output.writeUInt64(12, snapshotSeq_);
      }
      if (((bitField0_ & 0x00000800) != 0)) {
        output.writeUInt64(13, commitSeq_);
      }
      if (((bitField0_ & 0x00001000) != 0)) {
        output.writeBool(14, useCtsTransaction_);
      }
      if (((bitField0_ & 0x00002000) != 0)) {
        output.writeEnum(15, resultSetType_);
      }
      if (((bitField0_ & 0x00004000) != 0)) {
        output.writeBool(16, feedBack_);
      }
      if (((bitField0_ & 0x00000010) != 0)) {
        output.writeInt32(17, paramNum_);
      }
      if (((bitField0_ & 0x00008000) != 0)) {
        output.writeUInt64(18, capabilities_);
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (((bitField0_ & 0x00000001) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(1, stmt_);
      }
      if (((bitField0_ & 0x00000002) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(2, stmtDigest_);
      }
      if (((bitField0_ & 0x00000004) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(3, hint_);
      }
      for (int i = 0; i < tables_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(4, tables_.get(i));
      }
      if (((bitField0_ & 0x00000008) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBytesSize(5, param_);
      }
      if (((bitField0_ & 0x00000020) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBoolSize(6, compactMetadata_);
      }
      if (((bitField0_ & 0x00000040) != 0)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(7, dbName_);
      }
      for (int i = 0; i < sessionVariables_.size(); i++) {
        size += com.google.protobuf.CodedOutputStream
          .computeMessageSize(8, sessionVariables_.get(i));
      }
      if (((bitField0_ & 0x00000080) != 0)) {
        size += com.google.protobuf.GeneratedMessageV3.computeStringSize(9, encoding_);
      }
      if (((bitField0_ & 0x00000100) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(10, token_);
      }
      if (((bitField0_ & 0x00000200) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBoolSize(11, resetError_);
      }
      if (((bitField0_ & 0x00000400) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeUInt64Size(12, snapshotSeq_);
      }
      if (((bitField0_ & 0x00000800) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeUInt64Size(13, commitSeq_);
      }
      if (((bitField0_ & 0x00001000) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBoolSize(14, useCtsTransaction_);
      }
      if (((bitField0_ & 0x00002000) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeEnumSize(15, resultSetType_);
      }
      if (((bitField0_ & 0x00004000) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeBoolSize(16, feedBack_);
      }
      if (((bitField0_ & 0x00000010) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(17, paramNum_);
      }
      if (((bitField0_ & 0x00008000) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeUInt64Size(18, capabilities_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute)) {
        return super.equals(obj);
      }
      com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute other = (com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute) obj;

      if (hasStmt() != other.hasStmt()) return false;
      if (hasStmt()) {
        if (!getStmt()
            .equals(other.getStmt())) return false;
      }
      if (hasStmtDigest() != other.hasStmtDigest()) return false;
      if (hasStmtDigest()) {
        if (!getStmtDigest()
            .equals(other.getStmtDigest())) return false;
      }
      if (hasHint() != other.hasHint()) return false;
      if (hasHint()) {
        if (!getHint()
            .equals(other.getHint())) return false;
      }
      if (!getTablesList()
          .equals(other.getTablesList())) return false;
      if (hasParam() != other.hasParam()) return false;
      if (hasParam()) {
        if (!getParam()
            .equals(other.getParam())) return false;
      }
      if (hasParamNum() != other.hasParamNum()) return false;
      if (hasParamNum()) {
        if (getParamNum()
            != other.getParamNum()) return false;
      }
      if (hasCompactMetadata() != other.hasCompactMetadata()) return false;
      if (hasCompactMetadata()) {
        if (getCompactMetadata()
            != other.getCompactMetadata()) return false;
      }
      if (hasDbName() != other.hasDbName()) return false;
      if (hasDbName()) {
        if (!getDbName()
            .equals(other.getDbName())) return false;
      }
      if (!getSessionVariablesList()
          .equals(other.getSessionVariablesList())) return false;
      if (hasEncoding() != other.hasEncoding()) return false;
      if (hasEncoding()) {
        if (!getEncoding()
            .equals(other.getEncoding())) return false;
      }
      if (hasToken() != other.hasToken()) return false;
      if (hasToken()) {
        if (getToken()
            != other.getToken()) return false;
      }
      if (hasResetError() != other.hasResetError()) return false;
      if (hasResetError()) {
        if (getResetError()
            != other.getResetError()) return false;
      }
      if (hasSnapshotSeq() != other.hasSnapshotSeq()) return false;
      if (hasSnapshotSeq()) {
        if (getSnapshotSeq()
            != other.getSnapshotSeq()) return false;
      }
      if (hasCommitSeq() != other.hasCommitSeq()) return false;
      if (hasCommitSeq()) {
        if (getCommitSeq()
            != other.getCommitSeq()) return false;
      }
      if (hasUseCtsTransaction() != other.hasUseCtsTransaction()) return false;
      if (hasUseCtsTransaction()) {
        if (getUseCtsTransaction()
            != other.getUseCtsTransaction()) return false;
      }
      if (hasResultSetType() != other.hasResultSetType()) return false;
      if (hasResultSetType()) {
        if (resultSetType_ != other.resultSetType_) return false;
      }
      if (hasFeedBack() != other.hasFeedBack()) return false;
      if (hasFeedBack()) {
        if (getFeedBack()
            != other.getFeedBack()) return false;
      }
      if (hasCapabilities() != other.hasCapabilities()) return false;
      if (hasCapabilities()) {
        if (getCapabilities()
            != other.getCapabilities()) return false;
      }
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (hasStmt()) {
        hash = (37 * hash) + STMT_FIELD_NUMBER;
        hash = (53 * hash) + getStmt().hashCode();
      }
      if (hasStmtDigest()) {
        hash = (37 * hash) + STMT_DIGEST_FIELD_NUMBER;
        hash = (53 * hash) + getStmtDigest().hashCode();
      }
      if (hasHint()) {
        hash = (37 * hash) + HINT_FIELD_NUMBER;
        hash = (53 * hash) + getHint().hashCode();
      }
      if (getTablesCount() > 0) {
        hash = (37 * hash) + TABLES_FIELD_NUMBER;
        hash = (53 * hash) + getTablesList().hashCode();
      }
      if (hasParam()) {
        hash = (37 * hash) + PARAM_FIELD_NUMBER;
        hash = (53 * hash) + getParam().hashCode();
      }
      if (hasParamNum()) {
        hash = (37 * hash) + PARAM_NUM_FIELD_NUMBER;
        hash = (53 * hash) + getParamNum();
      }
      if (hasCompactMetadata()) {
        hash = (37 * hash) + COMPACT_METADATA_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
            getCompactMetadata());
      }
      if (hasDbName()) {
        hash = (37 * hash) + DB_NAME_FIELD_NUMBER;
        hash = (53 * hash) + getDbName().hashCode();
      }
      if (getSessionVariablesCount() > 0) {
        hash = (37 * hash) + SESSION_VARIABLES_FIELD_NUMBER;
        hash = (53 * hash) + getSessionVariablesList().hashCode();
      }
      if (hasEncoding()) {
        hash = (37 * hash) + ENCODING_FIELD_NUMBER;
        hash = (53 * hash) + getEncoding().hashCode();
      }
      if (hasToken()) {
        hash = (37 * hash) + TOKEN_FIELD_NUMBER;
        hash = (53 * hash) + getToken();
      }
      if (hasResetError()) {
        hash = (37 * hash) + RESET_ERROR_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
            getResetError());
      }
      if (hasSnapshotSeq()) {
        hash = (37 * hash) + SNAPSHOT_SEQ_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getSnapshotSeq());
      }
      if (hasCommitSeq()) {
        hash = (37 * hash) + COMMIT_SEQ_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getCommitSeq());
      }
      if (hasUseCtsTransaction()) {
        hash = (37 * hash) + USE_CTS_TRANSACTION_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
            getUseCtsTransaction());
      }
      if (hasResultSetType()) {
        hash = (37 * hash) + RESULT_SET_TYPE_FIELD_NUMBER;
        hash = (53 * hash) + resultSetType_;
      }
      if (hasFeedBack()) {
        hash = (37 * hash) + FEED_BACK_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
            getFeedBack());
      }
      if (hasCapabilities()) {
        hash = (37 * hash) + CAPABILITIES_FIELD_NUMBER;
        hash = (53 * hash) + com.google.protobuf.Internal.hashLong(
            getCapabilities());
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code Polarx.Sql.GalaxyPrepareExecute}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:Polarx.Sql.GalaxyPrepareExecute)
        com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecuteOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.mysql.cj.polarx.protobuf.PolarxSql.internal_static_Polarx_Sql_GalaxyPrepareExecute_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.mysql.cj.polarx.protobuf.PolarxSql.internal_static_Polarx_Sql_GalaxyPrepareExecute_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute.class, com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute.Builder.class);
      }

      // Construct using com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
          getTablesFieldBuilder();
          getSessionVariablesFieldBuilder();
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        stmt_ = com.google.protobuf.ByteString.EMPTY;
        bitField0_ = (bitField0_ & ~0x00000001);
        stmtDigest_ = com.google.protobuf.ByteString.EMPTY;
        bitField0_ = (bitField0_ & ~0x00000002);
        hint_ = com.google.protobuf.ByteString.EMPTY;
        bitField0_ = (bitField0_ & ~0x00000004);
        if (tablesBuilder_ == null) {
          tables_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000008);
        } else {
          tablesBuilder_.clear();
        }
        param_ = com.google.protobuf.ByteString.EMPTY;
        bitField0_ = (bitField0_ & ~0x00000010);
        paramNum_ = 0;
        bitField0_ = (bitField0_ & ~0x00000020);
        compactMetadata_ = false;
        bitField0_ = (bitField0_ & ~0x00000040);
        dbName_ = "";
        bitField0_ = (bitField0_ & ~0x00000080);
        if (sessionVariablesBuilder_ == null) {
          sessionVariables_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000100);
        } else {
          sessionVariablesBuilder_.clear();
        }
        encoding_ = "";
        bitField0_ = (bitField0_ & ~0x00000200);
        token_ = 0;
        bitField0_ = (bitField0_ & ~0x00000400);
        resetError_ = false;
        bitField0_ = (bitField0_ & ~0x00000800);
        snapshotSeq_ = 0L;
        bitField0_ = (bitField0_ & ~0x00001000);
        commitSeq_ = 0L;
        bitField0_ = (bitField0_ & ~0x00002000);
        useCtsTransaction_ = false;
        bitField0_ = (bitField0_ & ~0x00004000);
        resultSetType_ = 1;
        bitField0_ = (bitField0_ & ~0x00008000);
        feedBack_ = false;
        bitField0_ = (bitField0_ & ~0x00010000);
        capabilities_ = 0L;
        bitField0_ = (bitField0_ & ~0x00020000);
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return com.mysql.cj.polarx.protobuf.PolarxSql.internal_static_Polarx_Sql_GalaxyPrepareExecute_descriptor;
      }

      @java.lang.Override
      public com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute getDefaultInstanceForType() {
        return com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute.getDefaultInstance();
      }

      @java.lang.Override
      public com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute build() {
        com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute buildPartial() {
        com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute result = new com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute(this);
        int from_bitField0_ = bitField0_;
        int to_bitField0_ = 0;
        if (((from_bitField0_ & 0x00000001) != 0)) {
          to_bitField0_ |= 0x00000001;
        }
        result.stmt_ = stmt_;
        if (((from_bitField0_ & 0x00000002) != 0)) {
          to_bitField0_ |= 0x00000002;
        }
        result.stmtDigest_ = stmtDigest_;
        if (((from_bitField0_ & 0x00000004) != 0)) {
          to_bitField0_ |= 0x00000004;
        }
        result.hint_ = hint_;
        if (tablesBuilder_ == null) {
          if (((bitField0_ & 0x00000008) != 0)) {
            tables_ = java.util.Collections.unmodifiableList(tables_);
            bitField0_ = (bitField0_ & ~0x00000008);
          }
          result.tables_ = tables_;
        } else {
          result.tables_ = tablesBuilder_.build();
        }
        if (((from_bitField0_ & 0x00000010) != 0)) {
          to_bitField0_ |= 0x00000008;
        }
        result.param_ = param_;
        if (((from_bitField0_ & 0x00000020) != 0)) {
          result.paramNum_ = paramNum_;
          to_bitField0_ |= 0x00000010;
        }
        if (((from_bitField0_ & 0x00000040) != 0)) {
          result.compactMetadata_ = compactMetadata_;
          to_bitField0_ |= 0x00000020;
        }
        if (((from_bitField0_ & 0x00000080) != 0)) {
          to_bitField0_ |= 0x00000040;
        }
        result.dbName_ = dbName_;
        if (sessionVariablesBuilder_ == null) {
          if (((bitField0_ & 0x00000100) != 0)) {
            sessionVariables_ = java.util.Collections.unmodifiableList(sessionVariables_);
            bitField0_ = (bitField0_ & ~0x00000100);
          }
          result.sessionVariables_ = sessionVariables_;
        } else {
          result.sessionVariables_ = sessionVariablesBuilder_.build();
        }
        if (((from_bitField0_ & 0x00000200) != 0)) {
          to_bitField0_ |= 0x00000080;
        }
        result.encoding_ = encoding_;
        if (((from_bitField0_ & 0x00000400) != 0)) {
          result.token_ = token_;
          to_bitField0_ |= 0x00000100;
        }
        if (((from_bitField0_ & 0x00000800) != 0)) {
          result.resetError_ = resetError_;
          to_bitField0_ |= 0x00000200;
        }
        if (((from_bitField0_ & 0x00001000) != 0)) {
          result.snapshotSeq_ = snapshotSeq_;
          to_bitField0_ |= 0x00000400;
        }
        if (((from_bitField0_ & 0x00002000) != 0)) {
          result.commitSeq_ = commitSeq_;
          to_bitField0_ |= 0x00000800;
        }
        if (((from_bitField0_ & 0x00004000) != 0)) {
          result.useCtsTransaction_ = useCtsTransaction_;
          to_bitField0_ |= 0x00001000;
        }
        if (((from_bitField0_ & 0x00008000) != 0)) {
          to_bitField0_ |= 0x00002000;
        }
        result.resultSetType_ = resultSetType_;
        if (((from_bitField0_ & 0x00010000) != 0)) {
          result.feedBack_ = feedBack_;
          to_bitField0_ |= 0x00004000;
        }
        if (((from_bitField0_ & 0x00020000) != 0)) {
          result.capabilities_ = capabilities_;
          to_bitField0_ |= 0x00008000;
        }
        result.bitField0_ = to_bitField0_;
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute) {
          return mergeFrom((com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute other) {
        if (other == com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute.getDefaultInstance()) return this;
        if (other.hasStmt()) {
          setStmt(other.getStmt());
        }
        if (other.hasStmtDigest()) {
          setStmtDigest(other.getStmtDigest());
        }
        if (other.hasHint()) {
          setHint(other.getHint());
        }
        if (tablesBuilder_ == null) {
          if (!other.tables_.isEmpty()) {
            if (tables_.isEmpty()) {
              tables_ = other.tables_;
              bitField0_ = (bitField0_ & ~0x00000008);
            } else {
              ensureTablesIsMutable();
              tables_.addAll(other.tables_);
            }
            onChanged();
          }
        } else {
          if (!other.tables_.isEmpty()) {
            if (tablesBuilder_.isEmpty()) {
              tablesBuilder_.dispose();
              tablesBuilder_ = null;
              tables_ = other.tables_;
              bitField0_ = (bitField0_ & ~0x00000008);
              tablesBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getTablesFieldBuilder() : null;
            } else {
              tablesBuilder_.addAllMessages(other.tables_);
            }
          }
        }
        if (other.hasParam()) {
          setParam(other.getParam());
        }
        if (other.hasParamNum()) {
          setParamNum(other.getParamNum());
        }
        if (other.hasCompactMetadata()) {
          setCompactMetadata(other.getCompactMetadata());
        }
        if (other.hasDbName()) {
          bitField0_ |= 0x00000080;
          dbName_ = other.dbName_;
          onChanged();
        }
        if (sessionVariablesBuilder_ == null) {
          if (!other.sessionVariables_.isEmpty()) {
            if (sessionVariables_.isEmpty()) {
              sessionVariables_ = other.sessionVariables_;
              bitField0_ = (bitField0_ & ~0x00000100);
            } else {
              ensureSessionVariablesIsMutable();
              sessionVariables_.addAll(other.sessionVariables_);
            }
            onChanged();
          }
        } else {
          if (!other.sessionVariables_.isEmpty()) {
            if (sessionVariablesBuilder_.isEmpty()) {
              sessionVariablesBuilder_.dispose();
              sessionVariablesBuilder_ = null;
              sessionVariables_ = other.sessionVariables_;
              bitField0_ = (bitField0_ & ~0x00000100);
              sessionVariablesBuilder_ = 
                com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
                   getSessionVariablesFieldBuilder() : null;
            } else {
              sessionVariablesBuilder_.addAllMessages(other.sessionVariables_);
            }
          }
        }
        if (other.hasEncoding()) {
          bitField0_ |= 0x00000200;
          encoding_ = other.encoding_;
          onChanged();
        }
        if (other.hasToken()) {
          setToken(other.getToken());
        }
        if (other.hasResetError()) {
          setResetError(other.getResetError());
        }
        if (other.hasSnapshotSeq()) {
          setSnapshotSeq(other.getSnapshotSeq());
        }
        if (other.hasCommitSeq()) {
          setCommitSeq(other.getCommitSeq());
        }
        if (other.hasUseCtsTransaction()) {
          setUseCtsTransaction(other.getUseCtsTransaction());
        }
        if (other.hasResultSetType()) {
          setResultSetType(other.getResultSetType());
        }
        if (other.hasFeedBack()) {
          setFeedBack(other.getFeedBack());
        }
        if (other.hasCapabilities()) {
          setCapabilities(other.getCapabilities());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        for (int i = 0; i < getTablesCount(); i++) {
          if (!getTables(i).isInitialized()) {
            return false;
          }
        }
        for (int i = 0; i < getSessionVariablesCount(); i++) {
          if (!getSessionVariables(i).isInitialized()) {
            return false;
          }
        }
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private com.google.protobuf.ByteString stmt_ = com.google.protobuf.ByteString.EMPTY;
      /**
       * <code>optional bytes stmt = 1;</code>
       * @return Whether the stmt field is set.
       */
      public boolean hasStmt() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>optional bytes stmt = 1;</code>
       * @return The stmt.
       */
      public com.google.protobuf.ByteString getStmt() {
        return stmt_;
      }
      /**
       * <code>optional bytes stmt = 1;</code>
       * @param value The stmt to set.
       * @return This builder for chaining.
       */
      public Builder setStmt(com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000001;
        stmt_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional bytes stmt = 1;</code>
       * @return This builder for chaining.
       */
      public Builder clearStmt() {
        bitField0_ = (bitField0_ & ~0x00000001);
        stmt_ = getDefaultInstance().getStmt();
        onChanged();
        return this;
      }

      private com.google.protobuf.ByteString stmtDigest_ = com.google.protobuf.ByteString.EMPTY;
      /**
       * <code>optional bytes stmt_digest = 2;</code>
       * @return Whether the stmtDigest field is set.
       */
      public boolean hasStmtDigest() {
        return ((bitField0_ & 0x00000002) != 0);
      }
      /**
       * <code>optional bytes stmt_digest = 2;</code>
       * @return The stmtDigest.
       */
      public com.google.protobuf.ByteString getStmtDigest() {
        return stmtDigest_;
      }
      /**
       * <code>optional bytes stmt_digest = 2;</code>
       * @param value The stmtDigest to set.
       * @return This builder for chaining.
       */
      public Builder setStmtDigest(com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000002;
        stmtDigest_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional bytes stmt_digest = 2;</code>
       * @return This builder for chaining.
       */
      public Builder clearStmtDigest() {
        bitField0_ = (bitField0_ & ~0x00000002);
        stmtDigest_ = getDefaultInstance().getStmtDigest();
        onChanged();
        return this;
      }

      private com.google.protobuf.ByteString hint_ = com.google.protobuf.ByteString.EMPTY;
      /**
       * <code>optional bytes hint = 3;</code>
       * @return Whether the hint field is set.
       */
      public boolean hasHint() {
        return ((bitField0_ & 0x00000004) != 0);
      }
      /**
       * <code>optional bytes hint = 3;</code>
       * @return The hint.
       */
      public com.google.protobuf.ByteString getHint() {
        return hint_;
      }
      /**
       * <code>optional bytes hint = 3;</code>
       * @param value The hint to set.
       * @return This builder for chaining.
       */
      public Builder setHint(com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000004;
        hint_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional bytes hint = 3;</code>
       * @return This builder for chaining.
       */
      public Builder clearHint() {
        bitField0_ = (bitField0_ & ~0x00000004);
        hint_ = getDefaultInstance().getHint();
        onChanged();
        return this;
      }

      private java.util.List<com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData> tables_ =
        java.util.Collections.emptyList();
      private void ensureTablesIsMutable() {
        if (!((bitField0_ & 0x00000008) != 0)) {
          tables_ = new java.util.ArrayList<com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData>(tables_);
          bitField0_ |= 0x00000008;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData, com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData.Builder, com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableDataOrBuilder> tablesBuilder_;

      /**
       * <code>repeated .Polarx.Sql.GalaxyPrepareTableData tables = 4;</code>
       */
      public java.util.List<com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData> getTablesList() {
        if (tablesBuilder_ == null) {
          return java.util.Collections.unmodifiableList(tables_);
        } else {
          return tablesBuilder_.getMessageList();
        }
      }
      /**
       * <code>repeated .Polarx.Sql.GalaxyPrepareTableData tables = 4;</code>
       */
      public int getTablesCount() {
        if (tablesBuilder_ == null) {
          return tables_.size();
        } else {
          return tablesBuilder_.getCount();
        }
      }
      /**
       * <code>repeated .Polarx.Sql.GalaxyPrepareTableData tables = 4;</code>
       */
      public com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData getTables(int index) {
        if (tablesBuilder_ == null) {
          return tables_.get(index);
        } else {
          return tablesBuilder_.getMessage(index);
        }
      }
      /**
       * <code>repeated .Polarx.Sql.GalaxyPrepareTableData tables = 4;</code>
       */
      public Builder setTables(
          int index, com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData value) {
        if (tablesBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureTablesIsMutable();
          tables_.set(index, value);
          onChanged();
        } else {
          tablesBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .Polarx.Sql.GalaxyPrepareTableData tables = 4;</code>
       */
      public Builder setTables(
          int index, com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData.Builder builderForValue) {
        if (tablesBuilder_ == null) {
          ensureTablesIsMutable();
          tables_.set(index, builderForValue.build());
          onChanged();
        } else {
          tablesBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .Polarx.Sql.GalaxyPrepareTableData tables = 4;</code>
       */
      public Builder addTables(com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData value) {
        if (tablesBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureTablesIsMutable();
          tables_.add(value);
          onChanged();
        } else {
          tablesBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <code>repeated .Polarx.Sql.GalaxyPrepareTableData tables = 4;</code>
       */
      public Builder addTables(
          int index, com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData value) {
        if (tablesBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureTablesIsMutable();
          tables_.add(index, value);
          onChanged();
        } else {
          tablesBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .Polarx.Sql.GalaxyPrepareTableData tables = 4;</code>
       */
      public Builder addTables(
          com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData.Builder builderForValue) {
        if (tablesBuilder_ == null) {
          ensureTablesIsMutable();
          tables_.add(builderForValue.build());
          onChanged();
        } else {
          tablesBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .Polarx.Sql.GalaxyPrepareTableData tables = 4;</code>
       */
      public Builder addTables(
          int index, com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData.Builder builderForValue) {
        if (tablesBuilder_ == null) {
          ensureTablesIsMutable();
          tables_.add(index, builderForValue.build());
          onChanged();
        } else {
          tablesBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .Polarx.Sql.GalaxyPrepareTableData tables = 4;</code>
       */
      public Builder addAllTables(
          java.lang.Iterable<? extends com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData> values) {
        if (tablesBuilder_ == null) {
          ensureTablesIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, tables_);
          onChanged();
        } else {
          tablesBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <code>repeated .Polarx.Sql.GalaxyPrepareTableData tables = 4;</code>
       */
      public Builder clearTables() {
        if (tablesBuilder_ == null) {
          tables_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000008);
          onChanged();
        } else {
          tablesBuilder_.clear();
        }
        return this;
      }
      /**
       * <code>repeated .Polarx.Sql.GalaxyPrepareTableData tables = 4;</code>
       */
      public Builder removeTables(int index) {
        if (tablesBuilder_ == null) {
          ensureTablesIsMutable();
          tables_.remove(index);
          onChanged();
        } else {
          tablesBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <code>repeated .Polarx.Sql.GalaxyPrepareTableData tables = 4;</code>
       */
      public com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData.Builder getTablesBuilder(
          int index) {
        return getTablesFieldBuilder().getBuilder(index);
      }
      /**
       * <code>repeated .Polarx.Sql.GalaxyPrepareTableData tables = 4;</code>
       */
      public com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableDataOrBuilder getTablesOrBuilder(
          int index) {
        if (tablesBuilder_ == null) {
          return tables_.get(index);  } else {
          return tablesBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <code>repeated .Polarx.Sql.GalaxyPrepareTableData tables = 4;</code>
       */
      public java.util.List<? extends com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableDataOrBuilder> 
           getTablesOrBuilderList() {
        if (tablesBuilder_ != null) {
          return tablesBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(tables_);
        }
      }
      /**
       * <code>repeated .Polarx.Sql.GalaxyPrepareTableData tables = 4;</code>
       */
      public com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData.Builder addTablesBuilder() {
        return getTablesFieldBuilder().addBuilder(
            com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData.getDefaultInstance());
      }
      /**
       * <code>repeated .Polarx.Sql.GalaxyPrepareTableData tables = 4;</code>
       */
      public com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData.Builder addTablesBuilder(
          int index) {
        return getTablesFieldBuilder().addBuilder(
            index, com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData.getDefaultInstance());
      }
      /**
       * <code>repeated .Polarx.Sql.GalaxyPrepareTableData tables = 4;</code>
       */
      public java.util.List<com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData.Builder> 
           getTablesBuilderList() {
        return getTablesFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData, com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData.Builder, com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableDataOrBuilder> 
          getTablesFieldBuilder() {
        if (tablesBuilder_ == null) {
          tablesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData, com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableData.Builder, com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareTableDataOrBuilder>(
                  tables_,
                  ((bitField0_ & 0x00000008) != 0),
                  getParentForChildren(),
                  isClean());
          tables_ = null;
        }
        return tablesBuilder_;
      }

      private com.google.protobuf.ByteString param_ = com.google.protobuf.ByteString.EMPTY;
      /**
       * <pre>
       * Encoded param without table names.
       * </pre>
       *
       * <code>optional bytes param = 5;</code>
       * @return Whether the param field is set.
       */
      public boolean hasParam() {
        return ((bitField0_ & 0x00000010) != 0);
      }
      /**
       * <pre>
       * Encoded param without table names.
       * </pre>
       *
       * <code>optional bytes param = 5;</code>
       * @return The param.
       */
      public com.google.protobuf.ByteString getParam() {
        return param_;
      }
      /**
       * <pre>
       * Encoded param without table names.
       * </pre>
       *
       * <code>optional bytes param = 5;</code>
       * @param value The param to set.
       * @return This builder for chaining.
       */
      public Builder setParam(com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000010;
        param_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * Encoded param without table names.
       * </pre>
       *
       * <code>optional bytes param = 5;</code>
       * @return This builder for chaining.
       */
      public Builder clearParam() {
        bitField0_ = (bitField0_ & ~0x00000010);
        param_ = getDefaultInstance().getParam();
        onChanged();
        return this;
      }

      private int paramNum_ ;
      /**
       * <pre>
       * for mysql 5.7
       * </pre>
       *
       * <code>optional int32 param_num = 17;</code>
       * @return Whether the paramNum field is set.
       */
      public boolean hasParamNum() {
        return ((bitField0_ & 0x00000020) != 0);
      }
      /**
       * <pre>
       * for mysql 5.7
       * </pre>
       *
       * <code>optional int32 param_num = 17;</code>
       * @return The paramNum.
       */
      public int getParamNum() {
        return paramNum_;
      }
      /**
       * <pre>
       * for mysql 5.7
       * </pre>
       *
       * <code>optional int32 param_num = 17;</code>
       * @param value The paramNum to set.
       * @return This builder for chaining.
       */
      public Builder setParamNum(int value) {
        bitField0_ |= 0x00000020;
        paramNum_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * for mysql 5.7
       * </pre>
       *
       * <code>optional int32 param_num = 17;</code>
       * @return This builder for chaining.
       */
      public Builder clearParamNum() {
        bitField0_ = (bitField0_ & ~0x00000020);
        paramNum_ = 0;
        onChanged();
        return this;
      }

      private boolean compactMetadata_ ;
      /**
       * <code>optional bool compact_metadata = 6 [default = false];</code>
       * @return Whether the compactMetadata field is set.
       */
      public boolean hasCompactMetadata() {
        return ((bitField0_ & 0x00000040) != 0);
      }
      /**
       * <code>optional bool compact_metadata = 6 [default = false];</code>
       * @return The compactMetadata.
       */
      public boolean getCompactMetadata() {
        return compactMetadata_;
      }
      /**
       * <code>optional bool compact_metadata = 6 [default = false];</code>
       * @param value The compactMetadata to set.
       * @return This builder for chaining.
       */
      public Builder setCompactMetadata(boolean value) {
        bitField0_ |= 0x00000040;
        compactMetadata_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional bool compact_metadata = 6 [default = false];</code>
       * @return This builder for chaining.
       */
      public Builder clearCompactMetadata() {
        bitField0_ = (bitField0_ & ~0x00000040);
        compactMetadata_ = false;
        onChanged();
        return this;
      }

      private java.lang.Object dbName_ = "";
      /**
       * <pre>
       * Extra info.
       * </pre>
       *
       * <code>optional string db_name = 7;</code>
       * @return Whether the dbName field is set.
       */
      public boolean hasDbName() {
        return ((bitField0_ & 0x00000080) != 0);
      }
      /**
       * <pre>
       * Extra info.
       * </pre>
       *
       * <code>optional string db_name = 7;</code>
       * @return The dbName.
       */
      public java.lang.String getDbName() {
        java.lang.Object ref = dbName_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            dbName_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <pre>
       * Extra info.
       * </pre>
       *
       * <code>optional string db_name = 7;</code>
       * @return The bytes for dbName.
       */
      public com.google.protobuf.ByteString
          getDbNameBytes() {
        java.lang.Object ref = dbName_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          dbName_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <pre>
       * Extra info.
       * </pre>
       *
       * <code>optional string db_name = 7;</code>
       * @param value The dbName to set.
       * @return This builder for chaining.
       */
      public Builder setDbName(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000080;
        dbName_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * Extra info.
       * </pre>
       *
       * <code>optional string db_name = 7;</code>
       * @return This builder for chaining.
       */
      public Builder clearDbName() {
        bitField0_ = (bitField0_ & ~0x00000080);
        dbName_ = getDefaultInstance().getDbName();
        onChanged();
        return this;
      }
      /**
       * <pre>
       * Extra info.
       * </pre>
       *
       * <code>optional string db_name = 7;</code>
       * @param value The bytes for dbName to set.
       * @return This builder for chaining.
       */
      public Builder setDbNameBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000080;
        dbName_ = value;
        onChanged();
        return this;
      }

      private java.util.List<com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable> sessionVariables_ =
        java.util.Collections.emptyList();
      private void ensureSessionVariablesIsMutable() {
        if (!((bitField0_ & 0x00000100) != 0)) {
          sessionVariables_ = new java.util.ArrayList<com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable>(sessionVariables_);
          bitField0_ |= 0x00000100;
         }
      }

      private com.google.protobuf.RepeatedFieldBuilderV3<
          com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable, com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable.Builder, com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariableOrBuilder> sessionVariablesBuilder_;

      /**
       * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 8;</code>
       */
      public java.util.List<com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable> getSessionVariablesList() {
        if (sessionVariablesBuilder_ == null) {
          return java.util.Collections.unmodifiableList(sessionVariables_);
        } else {
          return sessionVariablesBuilder_.getMessageList();
        }
      }
      /**
       * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 8;</code>
       */
      public int getSessionVariablesCount() {
        if (sessionVariablesBuilder_ == null) {
          return sessionVariables_.size();
        } else {
          return sessionVariablesBuilder_.getCount();
        }
      }
      /**
       * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 8;</code>
       */
      public com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable getSessionVariables(int index) {
        if (sessionVariablesBuilder_ == null) {
          return sessionVariables_.get(index);
        } else {
          return sessionVariablesBuilder_.getMessage(index);
        }
      }
      /**
       * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 8;</code>
       */
      public Builder setSessionVariables(
          int index, com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable value) {
        if (sessionVariablesBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureSessionVariablesIsMutable();
          sessionVariables_.set(index, value);
          onChanged();
        } else {
          sessionVariablesBuilder_.setMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 8;</code>
       */
      public Builder setSessionVariables(
          int index, com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable.Builder builderForValue) {
        if (sessionVariablesBuilder_ == null) {
          ensureSessionVariablesIsMutable();
          sessionVariables_.set(index, builderForValue.build());
          onChanged();
        } else {
          sessionVariablesBuilder_.setMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 8;</code>
       */
      public Builder addSessionVariables(com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable value) {
        if (sessionVariablesBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureSessionVariablesIsMutable();
          sessionVariables_.add(value);
          onChanged();
        } else {
          sessionVariablesBuilder_.addMessage(value);
        }
        return this;
      }
      /**
       * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 8;</code>
       */
      public Builder addSessionVariables(
          int index, com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable value) {
        if (sessionVariablesBuilder_ == null) {
          if (value == null) {
            throw new NullPointerException();
          }
          ensureSessionVariablesIsMutable();
          sessionVariables_.add(index, value);
          onChanged();
        } else {
          sessionVariablesBuilder_.addMessage(index, value);
        }
        return this;
      }
      /**
       * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 8;</code>
       */
      public Builder addSessionVariables(
          com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable.Builder builderForValue) {
        if (sessionVariablesBuilder_ == null) {
          ensureSessionVariablesIsMutable();
          sessionVariables_.add(builderForValue.build());
          onChanged();
        } else {
          sessionVariablesBuilder_.addMessage(builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 8;</code>
       */
      public Builder addSessionVariables(
          int index, com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable.Builder builderForValue) {
        if (sessionVariablesBuilder_ == null) {
          ensureSessionVariablesIsMutable();
          sessionVariables_.add(index, builderForValue.build());
          onChanged();
        } else {
          sessionVariablesBuilder_.addMessage(index, builderForValue.build());
        }
        return this;
      }
      /**
       * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 8;</code>
       */
      public Builder addAllSessionVariables(
          java.lang.Iterable<? extends com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable> values) {
        if (sessionVariablesBuilder_ == null) {
          ensureSessionVariablesIsMutable();
          com.google.protobuf.AbstractMessageLite.Builder.addAll(
              values, sessionVariables_);
          onChanged();
        } else {
          sessionVariablesBuilder_.addAllMessages(values);
        }
        return this;
      }
      /**
       * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 8;</code>
       */
      public Builder clearSessionVariables() {
        if (sessionVariablesBuilder_ == null) {
          sessionVariables_ = java.util.Collections.emptyList();
          bitField0_ = (bitField0_ & ~0x00000100);
          onChanged();
        } else {
          sessionVariablesBuilder_.clear();
        }
        return this;
      }
      /**
       * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 8;</code>
       */
      public Builder removeSessionVariables(int index) {
        if (sessionVariablesBuilder_ == null) {
          ensureSessionVariablesIsMutable();
          sessionVariables_.remove(index);
          onChanged();
        } else {
          sessionVariablesBuilder_.remove(index);
        }
        return this;
      }
      /**
       * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 8;</code>
       */
      public com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable.Builder getSessionVariablesBuilder(
          int index) {
        return getSessionVariablesFieldBuilder().getBuilder(index);
      }
      /**
       * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 8;</code>
       */
      public com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariableOrBuilder getSessionVariablesOrBuilder(
          int index) {
        if (sessionVariablesBuilder_ == null) {
          return sessionVariables_.get(index);  } else {
          return sessionVariablesBuilder_.getMessageOrBuilder(index);
        }
      }
      /**
       * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 8;</code>
       */
      public java.util.List<? extends com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariableOrBuilder> 
           getSessionVariablesOrBuilderList() {
        if (sessionVariablesBuilder_ != null) {
          return sessionVariablesBuilder_.getMessageOrBuilderList();
        } else {
          return java.util.Collections.unmodifiableList(sessionVariables_);
        }
      }
      /**
       * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 8;</code>
       */
      public com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable.Builder addSessionVariablesBuilder() {
        return getSessionVariablesFieldBuilder().addBuilder(
            com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable.getDefaultInstance());
      }
      /**
       * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 8;</code>
       */
      public com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable.Builder addSessionVariablesBuilder(
          int index) {
        return getSessionVariablesFieldBuilder().addBuilder(
            index, com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable.getDefaultInstance());
      }
      /**
       * <code>repeated .Polarx.Datatypes.SessionVariable session_variables = 8;</code>
       */
      public java.util.List<com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable.Builder> 
           getSessionVariablesBuilderList() {
        return getSessionVariablesFieldBuilder().getBuilderList();
      }
      private com.google.protobuf.RepeatedFieldBuilderV3<
          com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable, com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable.Builder, com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariableOrBuilder> 
          getSessionVariablesFieldBuilder() {
        if (sessionVariablesBuilder_ == null) {
          sessionVariablesBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
              com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable, com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariable.Builder, com.mysql.cj.x.protobuf.PolarxDatatypes.SessionVariableOrBuilder>(
                  sessionVariables_,
                  ((bitField0_ & 0x00000100) != 0),
                  getParentForChildren(),
                  isClean());
          sessionVariables_ = null;
        }
        return sessionVariablesBuilder_;
      }

      private java.lang.Object encoding_ = "";
      /**
       * <code>optional string encoding = 9;</code>
       * @return Whether the encoding field is set.
       */
      public boolean hasEncoding() {
        return ((bitField0_ & 0x00000200) != 0);
      }
      /**
       * <code>optional string encoding = 9;</code>
       * @return The encoding.
       */
      public java.lang.String getEncoding() {
        java.lang.Object ref = encoding_;
        if (!(ref instanceof java.lang.String)) {
          com.google.protobuf.ByteString bs =
              (com.google.protobuf.ByteString) ref;
          java.lang.String s = bs.toStringUtf8();
          if (bs.isValidUtf8()) {
            encoding_ = s;
          }
          return s;
        } else {
          return (java.lang.String) ref;
        }
      }
      /**
       * <code>optional string encoding = 9;</code>
       * @return The bytes for encoding.
       */
      public com.google.protobuf.ByteString
          getEncodingBytes() {
        java.lang.Object ref = encoding_;
        if (ref instanceof String) {
          com.google.protobuf.ByteString b = 
              com.google.protobuf.ByteString.copyFromUtf8(
                  (java.lang.String) ref);
          encoding_ = b;
          return b;
        } else {
          return (com.google.protobuf.ByteString) ref;
        }
      }
      /**
       * <code>optional string encoding = 9;</code>
       * @param value The encoding to set.
       * @return This builder for chaining.
       */
      public Builder setEncoding(
          java.lang.String value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000200;
        encoding_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional string encoding = 9;</code>
       * @return This builder for chaining.
       */
      public Builder clearEncoding() {
        bitField0_ = (bitField0_ & ~0x00000200);
        encoding_ = getDefaultInstance().getEncoding();
        onChanged();
        return this;
      }
      /**
       * <code>optional string encoding = 9;</code>
       * @param value The bytes for encoding to set.
       * @return This builder for chaining.
       */
      public Builder setEncodingBytes(
          com.google.protobuf.ByteString value) {
        if (value == null) {
    throw new NullPointerException();
  }
  bitField0_ |= 0x00000200;
        encoding_ = value;
        onChanged();
        return this;
      }

      private int token_ ;
      /**
       * <code>optional int32 token = 10;</code>
       * @return Whether the token field is set.
       */
      public boolean hasToken() {
        return ((bitField0_ & 0x00000400) != 0);
      }
      /**
       * <code>optional int32 token = 10;</code>
       * @return The token.
       */
      public int getToken() {
        return token_;
      }
      /**
       * <code>optional int32 token = 10;</code>
       * @param value The token to set.
       * @return This builder for chaining.
       */
      public Builder setToken(int value) {
        bitField0_ |= 0x00000400;
        token_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional int32 token = 10;</code>
       * @return This builder for chaining.
       */
      public Builder clearToken() {
        bitField0_ = (bitField0_ & ~0x00000400);
        token_ = 0;
        onChanged();
        return this;
      }

      private boolean resetError_ ;
      /**
       * <code>optional bool reset_error = 11;</code>
       * @return Whether the resetError field is set.
       */
      public boolean hasResetError() {
        return ((bitField0_ & 0x00000800) != 0);
      }
      /**
       * <code>optional bool reset_error = 11;</code>
       * @return The resetError.
       */
      public boolean getResetError() {
        return resetError_;
      }
      /**
       * <code>optional bool reset_error = 11;</code>
       * @param value The resetError to set.
       * @return This builder for chaining.
       */
      public Builder setResetError(boolean value) {
        bitField0_ |= 0x00000800;
        resetError_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional bool reset_error = 11;</code>
       * @return This builder for chaining.
       */
      public Builder clearResetError() {
        bitField0_ = (bitField0_ & ~0x00000800);
        resetError_ = false;
        onChanged();
        return this;
      }

      private long snapshotSeq_ ;
      /**
       * <pre>
       * Trx.
       * </pre>
       *
       * <code>optional uint64 snapshot_seq = 12;</code>
       * @return Whether the snapshotSeq field is set.
       */
      public boolean hasSnapshotSeq() {
        return ((bitField0_ & 0x00001000) != 0);
      }
      /**
       * <pre>
       * Trx.
       * </pre>
       *
       * <code>optional uint64 snapshot_seq = 12;</code>
       * @return The snapshotSeq.
       */
      public long getSnapshotSeq() {
        return snapshotSeq_;
      }
      /**
       * <pre>
       * Trx.
       * </pre>
       *
       * <code>optional uint64 snapshot_seq = 12;</code>
       * @param value The snapshotSeq to set.
       * @return This builder for chaining.
       */
      public Builder setSnapshotSeq(long value) {
        bitField0_ |= 0x00001000;
        snapshotSeq_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * Trx.
       * </pre>
       *
       * <code>optional uint64 snapshot_seq = 12;</code>
       * @return This builder for chaining.
       */
      public Builder clearSnapshotSeq() {
        bitField0_ = (bitField0_ & ~0x00001000);
        snapshotSeq_ = 0L;
        onChanged();
        return this;
      }

      private long commitSeq_ ;
      /**
       * <code>optional uint64 commit_seq = 13;</code>
       * @return Whether the commitSeq field is set.
       */
      public boolean hasCommitSeq() {
        return ((bitField0_ & 0x00002000) != 0);
      }
      /**
       * <code>optional uint64 commit_seq = 13;</code>
       * @return The commitSeq.
       */
      public long getCommitSeq() {
        return commitSeq_;
      }
      /**
       * <code>optional uint64 commit_seq = 13;</code>
       * @param value The commitSeq to set.
       * @return This builder for chaining.
       */
      public Builder setCommitSeq(long value) {
        bitField0_ |= 0x00002000;
        commitSeq_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional uint64 commit_seq = 13;</code>
       * @return This builder for chaining.
       */
      public Builder clearCommitSeq() {
        bitField0_ = (bitField0_ & ~0x00002000);
        commitSeq_ = 0L;
        onChanged();
        return this;
      }

      private boolean useCtsTransaction_ ;
      /**
       * <code>optional bool use_cts_transaction = 14;</code>
       * @return Whether the useCtsTransaction field is set.
       */
      public boolean hasUseCtsTransaction() {
        return ((bitField0_ & 0x00004000) != 0);
      }
      /**
       * <code>optional bool use_cts_transaction = 14;</code>
       * @return The useCtsTransaction.
       */
      public boolean getUseCtsTransaction() {
        return useCtsTransaction_;
      }
      /**
       * <code>optional bool use_cts_transaction = 14;</code>
       * @param value The useCtsTransaction to set.
       * @return This builder for chaining.
       */
      public Builder setUseCtsTransaction(boolean value) {
        bitField0_ |= 0x00004000;
        useCtsTransaction_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional bool use_cts_transaction = 14;</code>
       * @return This builder for chaining.
       */
      public Builder clearUseCtsTransaction() {
        bitField0_ = (bitField0_ & ~0x00004000);
        useCtsTransaction_ = false;
        onChanged();
        return this;
      }

      private int resultSetType_ = 1;
      /**
       * <code>optional .Polarx.Sql.GalaxyPrepareExecute.ResultSetType result_set_type = 15 [default = ROW];</code>
       * @return Whether the resultSetType field is set.
       */
      public boolean hasResultSetType() {
        return ((bitField0_ & 0x00008000) != 0);
      }
      /**
       * <code>optional .Polarx.Sql.GalaxyPrepareExecute.ResultSetType result_set_type = 15 [default = ROW];</code>
       * @return The resultSetType.
       */
      public com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute.ResultSetType getResultSetType() {
        @SuppressWarnings("deprecation")
        com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute.ResultSetType result = com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute.ResultSetType.valueOf(resultSetType_);
        return result == null ? com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute.ResultSetType.ROW : result;
      }
      /**
       * <code>optional .Polarx.Sql.GalaxyPrepareExecute.ResultSetType result_set_type = 15 [default = ROW];</code>
       * @param value The resultSetType to set.
       * @return This builder for chaining.
       */
      public Builder setResultSetType(com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute.ResultSetType value) {
        if (value == null) {
          throw new NullPointerException();
        }
        bitField0_ |= 0x00008000;
        resultSetType_ = value.getNumber();
        onChanged();
        return this;
      }
      /**
       * <code>optional .Polarx.Sql.GalaxyPrepareExecute.ResultSetType result_set_type = 15 [default = ROW];</code>
       * @return This builder for chaining.
       */
      public Builder clearResultSetType() {
        bitField0_ = (bitField0_ & ~0x00008000);
        resultSetType_ = 1;
        onChanged();
        return this;
      }

      private boolean feedBack_ ;
      /**
       * <code>optional bool feed_back = 16 [default = false];</code>
       * @return Whether the feedBack field is set.
       */
      public boolean hasFeedBack() {
        return ((bitField0_ & 0x00010000) != 0);
      }
      /**
       * <code>optional bool feed_back = 16 [default = false];</code>
       * @return The feedBack.
       */
      public boolean getFeedBack() {
        return feedBack_;
      }
      /**
       * <code>optional bool feed_back = 16 [default = false];</code>
       * @param value The feedBack to set.
       * @return This builder for chaining.
       */
      public Builder setFeedBack(boolean value) {
        bitField0_ |= 0x00010000;
        feedBack_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional bool feed_back = 16 [default = false];</code>
       * @return This builder for chaining.
       */
      public Builder clearFeedBack() {
        bitField0_ = (bitField0_ & ~0x00010000);
        feedBack_ = false;
        onChanged();
        return this;
      }

      private long capabilities_ ;
      /**
       * <pre>
       * capabilities
       * </pre>
       *
       * <code>optional uint64 capabilities = 18;</code>
       * @return Whether the capabilities field is set.
       */
      public boolean hasCapabilities() {
        return ((bitField0_ & 0x00020000) != 0);
      }
      /**
       * <pre>
       * capabilities
       * </pre>
       *
       * <code>optional uint64 capabilities = 18;</code>
       * @return The capabilities.
       */
      public long getCapabilities() {
        return capabilities_;
      }
      /**
       * <pre>
       * capabilities
       * </pre>
       *
       * <code>optional uint64 capabilities = 18;</code>
       * @param value The capabilities to set.
       * @return This builder for chaining.
       */
      public Builder setCapabilities(long value) {
        bitField0_ |= 0x00020000;
        capabilities_ = value;
        onChanged();
        return this;
      }
      /**
       * <pre>
       * capabilities
       * </pre>
       *
       * <code>optional uint64 capabilities = 18;</code>
       * @return This builder for chaining.
       */
      public Builder clearCapabilities() {
        bitField0_ = (bitField0_ & ~0x00020000);
        capabilities_ = 0L;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:Polarx.Sql.GalaxyPrepareExecute)
    }

    // @@protoc_insertion_point(class_scope:Polarx.Sql.GalaxyPrepareExecute)
    private static final com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute();
    }

    public static com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    @java.lang.Deprecated public static final com.google.protobuf.Parser<GalaxyPrepareExecute>
        PARSER = new com.google.protobuf.AbstractParser<GalaxyPrepareExecute>() {
      @java.lang.Override
      public GalaxyPrepareExecute parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new GalaxyPrepareExecute(input, extensionRegistry);
      }
    };

    public static com.google.protobuf.Parser<GalaxyPrepareExecute> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<GalaxyPrepareExecute> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public com.mysql.cj.polarx.protobuf.PolarxSql.GalaxyPrepareExecute getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface StmtExecuteOkOrBuilder extends
      // @@protoc_insertion_point(interface_extends:Polarx.Sql.StmtExecuteOk)
      com.google.protobuf.MessageOrBuilder {
  }
  /**
   * <pre>
   * statement executed successful
   * </pre>
   *
   * Protobuf type {@code Polarx.Sql.StmtExecuteOk}
   */
  public  static final class StmtExecuteOk extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:Polarx.Sql.StmtExecuteOk)
      StmtExecuteOkOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use StmtExecuteOk.newBuilder() to construct.
    private StmtExecuteOk(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private StmtExecuteOk() {
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new StmtExecuteOk();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private StmtExecuteOk(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return com.mysql.cj.polarx.protobuf.PolarxSql.internal_static_Polarx_Sql_StmtExecuteOk_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return com.mysql.cj.polarx.protobuf.PolarxSql.internal_static_Polarx_Sql_StmtExecuteOk_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecuteOk.class, com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecuteOk.Builder.class);
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecuteOk)) {
        return super.equals(obj);
      }
      com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecuteOk other = (com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecuteOk) obj;

      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecuteOk parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecuteOk parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecuteOk parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecuteOk parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecuteOk parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecuteOk parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecuteOk parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecuteOk parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecuteOk parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecuteOk parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecuteOk parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecuteOk parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecuteOk prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * <pre>
     * statement executed successful
     * </pre>
     *
     * Protobuf type {@code Polarx.Sql.StmtExecuteOk}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:Polarx.Sql.StmtExecuteOk)
        com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecuteOkOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.mysql.cj.polarx.protobuf.PolarxSql.internal_static_Polarx_Sql_StmtExecuteOk_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.mysql.cj.polarx.protobuf.PolarxSql.internal_static_Polarx_Sql_StmtExecuteOk_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecuteOk.class, com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecuteOk.Builder.class);
      }

      // Construct using com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecuteOk.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return com.mysql.cj.polarx.protobuf.PolarxSql.internal_static_Polarx_Sql_StmtExecuteOk_descriptor;
      }

      @java.lang.Override
      public com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecuteOk getDefaultInstanceForType() {
        return com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecuteOk.getDefaultInstance();
      }

      @java.lang.Override
      public com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecuteOk build() {
        com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecuteOk result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecuteOk buildPartial() {
        com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecuteOk result = new com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecuteOk(this);
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecuteOk) {
          return mergeFrom((com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecuteOk)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecuteOk other) {
        if (other == com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecuteOk.getDefaultInstance()) return this;
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecuteOk parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecuteOk) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:Polarx.Sql.StmtExecuteOk)
    }

    // @@protoc_insertion_point(class_scope:Polarx.Sql.StmtExecuteOk)
    private static final com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecuteOk DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecuteOk();
    }

    public static com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecuteOk getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    @java.lang.Deprecated public static final com.google.protobuf.Parser<StmtExecuteOk>
        PARSER = new com.google.protobuf.AbstractParser<StmtExecuteOk>() {
      @java.lang.Override
      public StmtExecuteOk parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new StmtExecuteOk(input, extensionRegistry);
      }
    };

    public static com.google.protobuf.Parser<StmtExecuteOk> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<StmtExecuteOk> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public com.mysql.cj.polarx.protobuf.PolarxSql.StmtExecuteOk getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  public interface TokenOfferOrBuilder extends
      // @@protoc_insertion_point(interface_extends:Polarx.Sql.TokenOffer)
      com.google.protobuf.MessageOrBuilder {

    /**
     * <code>optional int32 token = 1 [default = -1];</code>
     * @return Whether the token field is set.
     */
    boolean hasToken();
    /**
     * <code>optional int32 token = 1 [default = -1];</code>
     * @return The token.
     */
    int getToken();
  }
  /**
   * Protobuf type {@code Polarx.Sql.TokenOffer}
   */
  public  static final class TokenOffer extends
      com.google.protobuf.GeneratedMessageV3 implements
      // @@protoc_insertion_point(message_implements:Polarx.Sql.TokenOffer)
      TokenOfferOrBuilder {
  private static final long serialVersionUID = 0L;
    // Use TokenOffer.newBuilder() to construct.
    private TokenOffer(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
      super(builder);
    }
    private TokenOffer() {
      token_ = -1;
    }

    @java.lang.Override
    @SuppressWarnings({"unused"})
    protected java.lang.Object newInstance(
        UnusedPrivateParameter unused) {
      return new TokenOffer();
    }

    @java.lang.Override
    public final com.google.protobuf.UnknownFieldSet
    getUnknownFields() {
      return this.unknownFields;
    }
    private TokenOffer(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      this();
      if (extensionRegistry == null) {
        throw new java.lang.NullPointerException();
      }
      int mutable_bitField0_ = 0;
      com.google.protobuf.UnknownFieldSet.Builder unknownFields =
          com.google.protobuf.UnknownFieldSet.newBuilder();
      try {
        boolean done = false;
        while (!done) {
          int tag = input.readTag();
          switch (tag) {
            case 0:
              done = true;
              break;
            case 8: {
              bitField0_ |= 0x00000001;
              token_ = input.readInt32();
              break;
            }
            default: {
              if (!parseUnknownField(
                  input, unknownFields, extensionRegistry, tag)) {
                done = true;
              }
              break;
            }
          }
        }
      } catch (com.google.protobuf.InvalidProtocolBufferException e) {
        throw e.setUnfinishedMessage(this);
      } catch (java.io.IOException e) {
        throw new com.google.protobuf.InvalidProtocolBufferException(
            e).setUnfinishedMessage(this);
      } finally {
        this.unknownFields = unknownFields.build();
        makeExtensionsImmutable();
      }
    }
    public static final com.google.protobuf.Descriptors.Descriptor
        getDescriptor() {
      return com.mysql.cj.polarx.protobuf.PolarxSql.internal_static_Polarx_Sql_TokenOffer_descriptor;
    }

    @java.lang.Override
    protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
        internalGetFieldAccessorTable() {
      return com.mysql.cj.polarx.protobuf.PolarxSql.internal_static_Polarx_Sql_TokenOffer_fieldAccessorTable
          .ensureFieldAccessorsInitialized(
              com.mysql.cj.polarx.protobuf.PolarxSql.TokenOffer.class, com.mysql.cj.polarx.protobuf.PolarxSql.TokenOffer.Builder.class);
    }

    private int bitField0_;
    public static final int TOKEN_FIELD_NUMBER = 1;
    private int token_;
    /**
     * <code>optional int32 token = 1 [default = -1];</code>
     * @return Whether the token field is set.
     */
    public boolean hasToken() {
      return ((bitField0_ & 0x00000001) != 0);
    }
    /**
     * <code>optional int32 token = 1 [default = -1];</code>
     * @return The token.
     */
    public int getToken() {
      return token_;
    }

    private byte memoizedIsInitialized = -1;
    @java.lang.Override
    public final boolean isInitialized() {
      byte isInitialized = memoizedIsInitialized;
      if (isInitialized == 1) return true;
      if (isInitialized == 0) return false;

      memoizedIsInitialized = 1;
      return true;
    }

    @java.lang.Override
    public void writeTo(com.google.protobuf.CodedOutputStream output)
                        throws java.io.IOException {
      if (((bitField0_ & 0x00000001) != 0)) {
        output.writeInt32(1, token_);
      }
      unknownFields.writeTo(output);
    }

    @java.lang.Override
    public int getSerializedSize() {
      int size = memoizedSize;
      if (size != -1) return size;

      size = 0;
      if (((bitField0_ & 0x00000001) != 0)) {
        size += com.google.protobuf.CodedOutputStream
          .computeInt32Size(1, token_);
      }
      size += unknownFields.getSerializedSize();
      memoizedSize = size;
      return size;
    }

    @java.lang.Override
    public boolean equals(final java.lang.Object obj) {
      if (obj == this) {
       return true;
      }
      if (!(obj instanceof com.mysql.cj.polarx.protobuf.PolarxSql.TokenOffer)) {
        return super.equals(obj);
      }
      com.mysql.cj.polarx.protobuf.PolarxSql.TokenOffer other = (com.mysql.cj.polarx.protobuf.PolarxSql.TokenOffer) obj;

      if (hasToken() != other.hasToken()) return false;
      if (hasToken()) {
        if (getToken()
            != other.getToken()) return false;
      }
      if (!unknownFields.equals(other.unknownFields)) return false;
      return true;
    }

    @java.lang.Override
    public int hashCode() {
      if (memoizedHashCode != 0) {
        return memoizedHashCode;
      }
      int hash = 41;
      hash = (19 * hash) + getDescriptor().hashCode();
      if (hasToken()) {
        hash = (37 * hash) + TOKEN_FIELD_NUMBER;
        hash = (53 * hash) + getToken();
      }
      hash = (29 * hash) + unknownFields.hashCode();
      memoizedHashCode = hash;
      return hash;
    }

    public static com.mysql.cj.polarx.protobuf.PolarxSql.TokenOffer parseFrom(
        java.nio.ByteBuffer data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.TokenOffer parseFrom(
        java.nio.ByteBuffer data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.TokenOffer parseFrom(
        com.google.protobuf.ByteString data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.TokenOffer parseFrom(
        com.google.protobuf.ByteString data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.TokenOffer parseFrom(byte[] data)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.TokenOffer parseFrom(
        byte[] data,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws com.google.protobuf.InvalidProtocolBufferException {
      return PARSER.parseFrom(data, extensionRegistry);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.TokenOffer parseFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.TokenOffer parseFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.TokenOffer parseDelimitedFrom(java.io.InputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.TokenOffer parseDelimitedFrom(
        java.io.InputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseDelimitedWithIOException(PARSER, input, extensionRegistry);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.TokenOffer parseFrom(
        com.google.protobuf.CodedInputStream input)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input);
    }
    public static com.mysql.cj.polarx.protobuf.PolarxSql.TokenOffer parseFrom(
        com.google.protobuf.CodedInputStream input,
        com.google.protobuf.ExtensionRegistryLite extensionRegistry)
        throws java.io.IOException {
      return com.google.protobuf.GeneratedMessageV3
          .parseWithIOException(PARSER, input, extensionRegistry);
    }

    @java.lang.Override
    public Builder newBuilderForType() { return newBuilder(); }
    public static Builder newBuilder() {
      return DEFAULT_INSTANCE.toBuilder();
    }
    public static Builder newBuilder(com.mysql.cj.polarx.protobuf.PolarxSql.TokenOffer prototype) {
      return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
    }
    @java.lang.Override
    public Builder toBuilder() {
      return this == DEFAULT_INSTANCE
          ? new Builder() : new Builder().mergeFrom(this);
    }

    @java.lang.Override
    protected Builder newBuilderForType(
        com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
      Builder builder = new Builder(parent);
      return builder;
    }
    /**
     * Protobuf type {@code Polarx.Sql.TokenOffer}
     */
    public static final class Builder extends
        com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
        // @@protoc_insertion_point(builder_implements:Polarx.Sql.TokenOffer)
        com.mysql.cj.polarx.protobuf.PolarxSql.TokenOfferOrBuilder {
      public static final com.google.protobuf.Descriptors.Descriptor
          getDescriptor() {
        return com.mysql.cj.polarx.protobuf.PolarxSql.internal_static_Polarx_Sql_TokenOffer_descriptor;
      }

      @java.lang.Override
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
          internalGetFieldAccessorTable() {
        return com.mysql.cj.polarx.protobuf.PolarxSql.internal_static_Polarx_Sql_TokenOffer_fieldAccessorTable
            .ensureFieldAccessorsInitialized(
                com.mysql.cj.polarx.protobuf.PolarxSql.TokenOffer.class, com.mysql.cj.polarx.protobuf.PolarxSql.TokenOffer.Builder.class);
      }

      // Construct using com.mysql.cj.polarx.protobuf.PolarxSql.TokenOffer.newBuilder()
      private Builder() {
        maybeForceBuilderInitialization();
      }

      private Builder(
          com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
        super(parent);
        maybeForceBuilderInitialization();
      }
      private void maybeForceBuilderInitialization() {
        if (com.google.protobuf.GeneratedMessageV3
                .alwaysUseFieldBuilders) {
        }
      }
      @java.lang.Override
      public Builder clear() {
        super.clear();
        token_ = -1;
        bitField0_ = (bitField0_ & ~0x00000001);
        return this;
      }

      @java.lang.Override
      public com.google.protobuf.Descriptors.Descriptor
          getDescriptorForType() {
        return com.mysql.cj.polarx.protobuf.PolarxSql.internal_static_Polarx_Sql_TokenOffer_descriptor;
      }

      @java.lang.Override
      public com.mysql.cj.polarx.protobuf.PolarxSql.TokenOffer getDefaultInstanceForType() {
        return com.mysql.cj.polarx.protobuf.PolarxSql.TokenOffer.getDefaultInstance();
      }

      @java.lang.Override
      public com.mysql.cj.polarx.protobuf.PolarxSql.TokenOffer build() {
        com.mysql.cj.polarx.protobuf.PolarxSql.TokenOffer result = buildPartial();
        if (!result.isInitialized()) {
          throw newUninitializedMessageException(result);
        }
        return result;
      }

      @java.lang.Override
      public com.mysql.cj.polarx.protobuf.PolarxSql.TokenOffer buildPartial() {
        com.mysql.cj.polarx.protobuf.PolarxSql.TokenOffer result = new com.mysql.cj.polarx.protobuf.PolarxSql.TokenOffer(this);
        int from_bitField0_ = bitField0_;
        int to_bitField0_ = 0;
        if (((from_bitField0_ & 0x00000001) != 0)) {
          to_bitField0_ |= 0x00000001;
        }
        result.token_ = token_;
        result.bitField0_ = to_bitField0_;
        onBuilt();
        return result;
      }

      @java.lang.Override
      public Builder clone() {
        return super.clone();
      }
      @java.lang.Override
      public Builder setField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.setField(field, value);
      }
      @java.lang.Override
      public Builder clearField(
          com.google.protobuf.Descriptors.FieldDescriptor field) {
        return super.clearField(field);
      }
      @java.lang.Override
      public Builder clearOneof(
          com.google.protobuf.Descriptors.OneofDescriptor oneof) {
        return super.clearOneof(oneof);
      }
      @java.lang.Override
      public Builder setRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          int index, java.lang.Object value) {
        return super.setRepeatedField(field, index, value);
      }
      @java.lang.Override
      public Builder addRepeatedField(
          com.google.protobuf.Descriptors.FieldDescriptor field,
          java.lang.Object value) {
        return super.addRepeatedField(field, value);
      }
      @java.lang.Override
      public Builder mergeFrom(com.google.protobuf.Message other) {
        if (other instanceof com.mysql.cj.polarx.protobuf.PolarxSql.TokenOffer) {
          return mergeFrom((com.mysql.cj.polarx.protobuf.PolarxSql.TokenOffer)other);
        } else {
          super.mergeFrom(other);
          return this;
        }
      }

      public Builder mergeFrom(com.mysql.cj.polarx.protobuf.PolarxSql.TokenOffer other) {
        if (other == com.mysql.cj.polarx.protobuf.PolarxSql.TokenOffer.getDefaultInstance()) return this;
        if (other.hasToken()) {
          setToken(other.getToken());
        }
        this.mergeUnknownFields(other.unknownFields);
        onChanged();
        return this;
      }

      @java.lang.Override
      public final boolean isInitialized() {
        return true;
      }

      @java.lang.Override
      public Builder mergeFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws java.io.IOException {
        com.mysql.cj.polarx.protobuf.PolarxSql.TokenOffer parsedMessage = null;
        try {
          parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
        } catch (com.google.protobuf.InvalidProtocolBufferException e) {
          parsedMessage = (com.mysql.cj.polarx.protobuf.PolarxSql.TokenOffer) e.getUnfinishedMessage();
          throw e.unwrapIOException();
        } finally {
          if (parsedMessage != null) {
            mergeFrom(parsedMessage);
          }
        }
        return this;
      }
      private int bitField0_;

      private int token_ = -1;
      /**
       * <code>optional int32 token = 1 [default = -1];</code>
       * @return Whether the token field is set.
       */
      public boolean hasToken() {
        return ((bitField0_ & 0x00000001) != 0);
      }
      /**
       * <code>optional int32 token = 1 [default = -1];</code>
       * @return The token.
       */
      public int getToken() {
        return token_;
      }
      /**
       * <code>optional int32 token = 1 [default = -1];</code>
       * @param value The token to set.
       * @return This builder for chaining.
       */
      public Builder setToken(int value) {
        bitField0_ |= 0x00000001;
        token_ = value;
        onChanged();
        return this;
      }
      /**
       * <code>optional int32 token = 1 [default = -1];</code>
       * @return This builder for chaining.
       */
      public Builder clearToken() {
        bitField0_ = (bitField0_ & ~0x00000001);
        token_ = -1;
        onChanged();
        return this;
      }
      @java.lang.Override
      public final Builder setUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.setUnknownFields(unknownFields);
      }

      @java.lang.Override
      public final Builder mergeUnknownFields(
          final com.google.protobuf.UnknownFieldSet unknownFields) {
        return super.mergeUnknownFields(unknownFields);
      }


      // @@protoc_insertion_point(builder_scope:Polarx.Sql.TokenOffer)
    }

    // @@protoc_insertion_point(class_scope:Polarx.Sql.TokenOffer)
    private static final com.mysql.cj.polarx.protobuf.PolarxSql.TokenOffer DEFAULT_INSTANCE;
    static {
      DEFAULT_INSTANCE = new com.mysql.cj.polarx.protobuf.PolarxSql.TokenOffer();
    }

    public static com.mysql.cj.polarx.protobuf.PolarxSql.TokenOffer getDefaultInstance() {
      return DEFAULT_INSTANCE;
    }

    @java.lang.Deprecated public static final com.google.protobuf.Parser<TokenOffer>
        PARSER = new com.google.protobuf.AbstractParser<TokenOffer>() {
      @java.lang.Override
      public TokenOffer parsePartialFrom(
          com.google.protobuf.CodedInputStream input,
          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
          throws com.google.protobuf.InvalidProtocolBufferException {
        return new TokenOffer(input, extensionRegistry);
      }
    };

    public static com.google.protobuf.Parser<TokenOffer> parser() {
      return PARSER;
    }

    @java.lang.Override
    public com.google.protobuf.Parser<TokenOffer> getParserForType() {
      return PARSER;
    }

    @java.lang.Override
    public com.mysql.cj.polarx.protobuf.PolarxSql.TokenOffer getDefaultInstanceForType() {
      return DEFAULT_INSTANCE;
    }

  }

  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_Polarx_Sql_StmtExecute_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_Polarx_Sql_StmtExecute_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_Polarx_Sql_GalaxyPrepareTableData_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_Polarx_Sql_GalaxyPrepareTableData_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_Polarx_Sql_GalaxyPrepareExecute_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_Polarx_Sql_GalaxyPrepareExecute_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_Polarx_Sql_StmtExecuteOk_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_Polarx_Sql_StmtExecuteOk_fieldAccessorTable;
  private static final com.google.protobuf.Descriptors.Descriptor
    internal_static_Polarx_Sql_TokenOffer_descriptor;
  private static final 
    com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
      internal_static_Polarx_Sql_TokenOffer_fieldAccessorTable;

  public static com.google.protobuf.Descriptors.FileDescriptor
      getDescriptor() {
    return descriptor;
  }
  private static  com.google.protobuf.Descriptors.FileDescriptor
      descriptor;
  static {
    java.lang.String[] descriptorData = {
      "\n\020polarx_sql.proto\022\nPolarx.Sql\032\026polarx_d" +
      "atatypes.proto\"\271\003\n\013StmtExecute\022\026\n\tnamesp" +
      "ace\030\003 \001(\t:\003sql\022\014\n\004stmt\030\001 \001(\014\022\023\n\013stmt_dig" +
      "est\030\014 \001(\014\022\014\n\004hint\030\r \001(\014\022\033\n\014chunk_result\030" +
      "\016 \001(\010:\005false\022\030\n\tfeed_back\030\020 \001(\010:\005false\022#" +
      "\n\004args\030\002 \003(\0132\025.Polarx.Datatypes.Any\022\037\n\020c" +
      "ompact_metadata\030\004 \001(\010:\005false\022\023\n\013schema_n" +
      "ame\030\005 \001(\t\022<\n\021session_variables\030\006 \003(\0132!.P" +
      "olarx.Datatypes.SessionVariable\022\020\n\010encod" +
      "ing\030\007 \001(\t\022\r\n\005token\030\010 \001(\005\022\023\n\013reset_error\030" +
      "\t \001(\010\022\024\n\014snapshot_seq\030\n \001(\004\022\022\n\ncommit_se" +
      "q\030\013 \001(\004\022\033\n\023use_cts_transaction\030\017 \001(\010\022\024\n\014" +
      "capabilities\030\021 \001(\004\"R\n\026GalaxyPrepareTable" +
      "Data\022\023\n\013table_index\030\001 \002(\005\022\017\n\007db_name\030\002 \001" +
      "(\014\022\022\n\ntable_name\030\003 \002(\014\"\260\004\n\024GalaxyPrepare" +
      "Execute\022\014\n\004stmt\030\001 \001(\014\022\023\n\013stmt_digest\030\002 \001" +
      "(\014\022\014\n\004hint\030\003 \001(\014\0222\n\006tables\030\004 \003(\0132\".Polar" +
      "x.Sql.GalaxyPrepareTableData\022\r\n\005param\030\005 " +
      "\001(\014\022\021\n\tparam_num\030\021 \001(\005\022\037\n\020compact_metada" +
      "ta\030\006 \001(\010:\005false\022\017\n\007db_name\030\007 \001(\t\022<\n\021sess" +
      "ion_variables\030\010 \003(\0132!.Polarx.Datatypes.S" +
      "essionVariable\022\020\n\010encoding\030\t \001(\t\022\r\n\005toke" +
      "n\030\n \001(\005\022\023\n\013reset_error\030\013 \001(\010\022\024\n\014snapshot" +
      "_seq\030\014 \001(\004\022\022\n\ncommit_seq\030\r \001(\004\022\033\n\023use_ct" +
      "s_transaction\030\016 \001(\010\022L\n\017result_set_type\030\017" +
      " \001(\0162..Polarx.Sql.GalaxyPrepareExecute.R" +
      "esultSetType:\003ROW\022\030\n\tfeed_back\030\020 \001(\010:\005fa" +
      "lse\022\024\n\014capabilities\030\022 \001(\004\"&\n\rResultSetTy" +
      "pe\022\007\n\003ROW\020\001\022\014\n\010CHUNK_V1\020\002\"\017\n\rStmtExecute" +
      "Ok\"\037\n\nTokenOffer\022\021\n\005token\030\001 \001(\005:\002-1B\036\n\034c" +
      "om.mysql.cj.polarx.protobuf"
    };
    descriptor = com.google.protobuf.Descriptors.FileDescriptor
      .internalBuildGeneratedFileFrom(descriptorData,
        new com.google.protobuf.Descriptors.FileDescriptor[] {
          com.mysql.cj.x.protobuf.PolarxDatatypes.getDescriptor(),
        });
    internal_static_Polarx_Sql_StmtExecute_descriptor =
      getDescriptor().getMessageTypes().get(0);
    internal_static_Polarx_Sql_StmtExecute_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_Polarx_Sql_StmtExecute_descriptor,
        new java.lang.String[] { "Namespace", "Stmt", "StmtDigest", "Hint", "ChunkResult", "FeedBack", "Args", "CompactMetadata", "SchemaName", "SessionVariables", "Encoding", "Token", "ResetError", "SnapshotSeq", "CommitSeq", "UseCtsTransaction", "Capabilities", });
    internal_static_Polarx_Sql_GalaxyPrepareTableData_descriptor =
      getDescriptor().getMessageTypes().get(1);
    internal_static_Polarx_Sql_GalaxyPrepareTableData_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_Polarx_Sql_GalaxyPrepareTableData_descriptor,
        new java.lang.String[] { "TableIndex", "DbName", "TableName", });
    internal_static_Polarx_Sql_GalaxyPrepareExecute_descriptor =
      getDescriptor().getMessageTypes().get(2);
    internal_static_Polarx_Sql_GalaxyPrepareExecute_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_Polarx_Sql_GalaxyPrepareExecute_descriptor,
        new java.lang.String[] { "Stmt", "StmtDigest", "Hint", "Tables", "Param", "ParamNum", "CompactMetadata", "DbName", "SessionVariables", "Encoding", "Token", "ResetError", "SnapshotSeq", "CommitSeq", "UseCtsTransaction", "ResultSetType", "FeedBack", "Capabilities", });
    internal_static_Polarx_Sql_StmtExecuteOk_descriptor =
      getDescriptor().getMessageTypes().get(3);
    internal_static_Polarx_Sql_StmtExecuteOk_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_Polarx_Sql_StmtExecuteOk_descriptor,
        new java.lang.String[] { });
    internal_static_Polarx_Sql_TokenOffer_descriptor =
      getDescriptor().getMessageTypes().get(4);
    internal_static_Polarx_Sql_TokenOffer_fieldAccessorTable = new
      com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
        internal_static_Polarx_Sql_TokenOffer_descriptor,
        new java.lang.String[] { "Token", });
    com.mysql.cj.x.protobuf.PolarxDatatypes.getDescriptor();
  }

  // @@protoc_insertion_point(outer_class_scope)
}
